Live data from Hacker News

Airlines are running out of 4-digit flight numbers

viewfromthewing.com

331–340 of 461 posts

Re: Airlines are running out of 4-digit flight numbers

#331
post #227

> Here’s the full answer, along with how they triage the problem – for instance by assigning the same flight number to more than one flight a day (although that means they need for it to be flights that would never both be in the air at the same time, such as where the same plane is used and can’t reasonably be substituted) This sounds like it's calling for trouble! Whenever I hear that any IDs could be "recycled", I…

Whenever I hear that any IDs could be "recycled", I make a mental note to replace the person making such a proposal from all teams that I am involved in.

This sounds pretty messed up to me. Someone makes a suggestion or throws out an idea you don’t like so you’re gonna essentially cut them out of your professional life or even fire them? Am I reading this right?

Re: Airlines are running out of 4-digit flight numbers

#332
post #227

> Here’s the full answer, along with how they triage the problem – for instance by assigning the same flight number to more than one flight a day (although that means they need for it to be flights that would never both be in the air at the same time, such as where the same plane is used and can’t reasonably be substituted) This sounds like it's calling for trouble! Whenever I hear that any IDs could be "recycled", I…

Isn't this what Southwest essentially does? I've been on a Southwest flight that makes four or five stops, all with the same number. But I'm sure no person took more than one stop on the same plane.

It works well enough for trains too. On those you get to stay onboard for multiple legs though, and I believe that’s quite rare for flights.

Re: Airlines are running out of 4-digit flight numbers

#333
post #265

Earlier quoted context omitted.

We could also have bumped 255.255.255.255 to 999.999.999.999 = 1 trillion IP addresses, easy-to-remember and backward compatibility with legacy devices. Modern clients and servers get IP addresses in these new whole IP ranges and can communicate together. Relatively easy to adapt the code of modern software also since it's about removing a restriction from a client-perspective. Load-balancers and legacy clients use I…

I'm guessing everyone downvotes you for the very strange implication that most software stores IP addresses in ASCII. All networking APIs I'm aware of expect IPv4 addresses as a DWORD.

This is the point, instead of rewriting a full stack, I would rather change the prototype of these APIs.

To store 999.999.999.999, then you are totally fine with a 64-bits INT (QWORD), and there is no struggle to backward-compatibility store a 32-bits INT (DWORD) into it.

It's more of a matter of doing #ifdef IPV4_EXTENDED #define DWORD QWORD #endif

and add an extra IP field inside the IP header packet itself that says, "this is the IPV4_EXTENDED DESTINATION 5-bytes IP", and the previous field is marked a legacy/deprecated.

In fact, it's quite convenient, since we are all INT64, sockaddr_in would largely fit in an INT64 for both IP itself and the other elements that are in the struct.

https://man7.org/linux/man-pages/man3/sockaddr.3type.html

5 bytes for the sin_addr field is enough to store until 999.999.999.999.

Gives you 3 bytes to store the port etc.

The networking APIs guys could be drinking cocktails at the bar by now, if they would change these types.

There is backward compatibility and smaller effort for a great impact, and this is beautiful.

It's actually beneficial for the majority of developers.

From the developer of Windows, to the developer of Age of Empires, to the developer of a CRUD app on the web (who stores IP addresses as a string or as an int), they wouldn't see too much struggle to port to int64.

Less than having to build a full new IPv6 experience.

In practice, client apps, at the time you open a new socket, if your lib says it wants an INT32 or an INT64 it doesn't matter for the developer of that app, since type is automatically casted.

time() had a similar situation.

We migrated by adding new bytes, we didn't redefine the concept of time.

From a developer-experience, "link to the latest version of the network library, oh btw, connect() accepts an int64" and remove the UI restriction of 255.

It could even be possible to give compatibility to very old software that we lost source-code from by overriding the network layer with LD_LIBRARY_PRELOAD or equivalent, and patch these softwares by manually NOP the right JGE instruction (the asm code for " >= " ) that checks if we are over 255.

Re: Airlines are running out of 4-digit flight numbers

#334
post #322

Earlier quoted context omitted.

> You are referencing the private blocks that are designed for private use. Sure, but the person I'm replying to wasn't making a distinction here. They're just saying, "Have you ever changed the static IP address of a computer", where does that exclude RFC1918 IP addresses? I'm right for the right reasons IRT to the person I'm replying to. There are IP addresses which are absolutely not globally unique in any way, sh…

Real talk. I’ve been working in tech for 20 years, am coming off a year-long sabbatical, and for the past couple of months have been struggling with the feeling that the joy is gone and I should consider a radical career change. Reading (what feels to me as) the aggressive pedantry of parent commenter in this thread is giving me a straight up anxiety attack. I’m not sure I have it in me anymore to be in meetings with…

If someone says, "Tom Hanks played Jon Snow in Game of Thrones", and then you reply "that's incorrect, it was Kit Harrington", and then people say "well it's really Tom Hank's cousin that played him", which is still incorrect, is it aggressive pedantry to point out that's still wrong?

IP addresses are not globally unique. IP:PORT is not globally unique. Kit Harrington played Jon Snow in the HBO series Game of Thrones. These are just cold, hard, facts.

Looking for real feedback here, as I don't really want to give anyone panic attacks, but what would you suggest I say to posts attempting to correct me saying I'm wrong when I know they're factually incorrect? Just accept the falsehoods?

Re: Airlines are running out of 4-digit flight numbers

#335

Earlier quoted context omitted.

The funny thing is that IPv6 is used more by general public more than professionals. Public doesn't notice that their mobile network is IPv6, or that there home internet also supports it. It is the professionals that are dragging feet upgrading the business networks. More people access Google with IPv6 on weekends, currently 46%, than on weekdays, 43%. Presumably because mobile and home networks are more likely to be…

No, IPv6 is the underlying technology behind the general consumers' internet connections, but the general public is not using IPv6. The general public has no idea what IPv6 is. I.e. IPv6 is used by the general public, but the general public is not using IPv6.

By that same token the general public is also not using IPv4. The general public doesn't care, so long as TikTok and Facebook appear on their mobile devices.

Re: Airlines are running out of 4-digit flight numbers

#336

Earlier quoted context omitted.

Have you ever changed the static IP address of a computer? You just “recycled” a “globally unique” ID. Recycling unique IDs (more precisely: changing the underlying thing the ID points to) is not impossible; there’s lots of pathological failure modes; for certain ID-spaces it’s kinda a required use case; so we have to deal with it.

IP addresses (especially IPv4) are not even supposed to be globally unique. How many 192.168.1.1 devices are out there? How many different distinct physical boxes respond to traffic going to 1.1.1.1?

They are most definitely designed to be globally unique, and we fucked it up.

Re: Airlines are running out of 4-digit flight numbers

#337
post #227

> Here’s the full answer, along with how they triage the problem – for instance by assigning the same flight number to more than one flight a day (although that means they need for it to be flights that would never both be in the air at the same time, such as where the same plane is used and can’t reasonably be substituted) This sounds like it's calling for trouble! Whenever I hear that any IDs could be "recycled", I…

I'm certain each flight has its own completely unique ID buried somewhere in a database. But, shorter codes can be spoken into a radio faster and with lower probability of misinterpretation - both critical features for air traffic control. Those shorter codes will necessarily be reused, it's just a question of the time interval between re-uses of any particular code. I faintly recall seeing two Southwest flights from…

Flight numbers get changed when airlines re-do their scheduling. It's still a fairly manual process as sometimes the numbers are symbolic.

Either way, when they talk about re-using flight numbers on the same day, what they mean is they create multi-stop flights to use the same number for each segment instead.

So you'll see flights like, hypothetically...

> AA 1325 ORD-LGA

> AA 1351 LGA-YUL

> AA 1352 YUL-LGA

> AA 1326 LGA-YUL

Getting converted into a single flight number.

> AA 1325 ORD-LGA-YUL-LGA-ORD

Basically converting this to a flight from Chicago to Chicago via New York and Montreal nets them a 4:1 reduction in numbers used.

You can still book each segment separately, and if they generally book the same plane, say some Envoy Air regional jet, for all four segments, there's little risk that irregular operations will lead to two planes in the air at the same time with the same number. Worst case they can give that one segment a new flight number for that day.

They've been doing this a lot in the last few years, especially on regional flights, and especially in the northeast where there's a ton of short hops.

[edit] If they want a bunch of their flight numbers back they can stop codesharing and switch back to relying on interline ticketing and sell the operating carriers flight number. I can't really think of anything good that's come of codesharing to individual passengers.

Re: Airlines are running out of 4-digit flight numbers

#338
post #80

Clearly the successor solution is to use eight groups of four hexadecimal digits each, separated by colons. Then each individual seat and peanut could be addressed to it's final destination. More seriously the solution suggested of giving the 3 companies other unused prefixes like D* U* and A* to use with their codeshares and non rev flights to start seems the easiest.

Done forget to have a secondary identifier to further divide the seat. I recommend using a short to represent the 65536 possible slices a seat can split. Then on the ticket, there would be an extension section that tells you the alias of the person that is about to board. We can call it SNI or Sitter Name Indicator. Another section could be an indicator if the rider is alive when boarding. We can call the extension a…

Where do zone identifiers come into the picture?

Re: Airlines are running out of 4-digit flight numbers

#339

Earlier quoted context omitted.

I'm certain each flight has its own completely unique ID buried somewhere in a database. But, shorter codes can be spoken into a radio faster and with lower probability of misinterpretation - both critical features for air traffic control. Those shorter codes will necessarily be reused, it's just a question of the time interval between re-uses of any particular code. I faintly recall seeing two Southwest flights from…

> I'm certain each flight has its own completely unique ID buried somewhere in a database There is. It's called the Globally Unique Flight Identifier (GUFI), and it's essentially a UUIDv4[1]. [1]: https://docs.fixm.aero/#/general-guidance/flight_identificat...

This line made me chuckle:

> The `Aircraft Identification` is NOT an identifier of an aircraft. It is an identifier of a flight.

Re: Airlines are running out of 4-digit flight numbers

#340
post #333

Earlier quoted context omitted.

I'm guessing everyone downvotes you for the very strange implication that most software stores IP addresses in ASCII. All networking APIs I'm aware of expect IPv4 addresses as a DWORD.

This is the point, instead of rewriting a full stack, I would rather change the prototype of these APIs. To store 999.999.999.999, then you are totally fine with a 64-bits INT (QWORD), and there is no struggle to backward-compatibility store a 32-bits INT (DWORD) into it. It's more of a matter of doing #ifdef IPV4_EXTENDED #define DWORD QWORD #endif and add an extra IP field inside the IP header packet itself that sa…

and what about the protocol bytes that go over the wire - you know, the most important and hardest to change part?

There've been several proposals to make "IPv4 but bigger addresses". All of them are just as hard to deploy as IPv6. You still need to upgrade all your routers and you still need to run two parallel networks.

Post reply on HN