What is BGP 4-byte AS number?
Starting from January 2009 IANA assigns 4 bytes AS numbers by default unless otherwise specified. They asked providers to upgrade their routers to support the new format. I thought it may be nice to explore the story with you without delving in much technical details:
1. What is a 4-byte AS number and is it different from the 2-byte format ?
- The 2 byte format allowed for 65,535 different AS numbers (2^16).
- The new 4-byte format allows 4294967295 different AS numbers (2^32).
- The numbers from 0 to 65,535 are common between the two formats allowing for easier interoperability.
- The 4-byte format is represented in one of three ways called the asplain, asdot+ and the asdot. Refer to the RFC5396 for explanation of these representations.
2. Why is this happening now ?
Of course its the depletion of the 2 byte AS numbers. Follow the link for a daily report describing the current state of allocation of 2-byte format AS numbers.
3. How is this going to affect the BGP operation ?
- All the BGP concepts and theory stay the same. Only new attributes are defined to carry the new formats.
- The change is going to affect only the BGP entities that make use of the AS numbers. These are the BGP open message, the AS_Path, the aggregator and the communities attributes.
- Peering sessions between routers with new AS numbers are interoperable with older AS numbers or even with routers that does not even support the new 4-byte format and the session continues with the old BGP rules. Check the RFC4893 for more details.
4. What do I need to do with my network ?
Unless you are going to acquire a new 4-byte format AS number, or your are a service provider you need to do nothing with your network. Service providers need to upgrade their OS images to support the new implementation because they may peer with many customers using the new format which may cause some problems it they keep on using the old format.
5. What if I need to know more ?
- Check out Jeff Doyel's Post on understanding 4-byte Autonoums system numbers.
- Refer to RFC4893.