Dear Tom, IMHO, these are valuable comments. However, I'm kind of lost on this part:
> A Indexes the blocks of port numbers. The lowest block number > (A = 0) and possibly others contain the system port numbers, > and hence should not be used if port numbers 0-1023 are to > be avoided. > > a Width of the field containing the block index A. Indirectly > a determines the block size, by the formula: > Block size = 65536 / 2^a I'm not sure of the meaning of 'Block size', which is equal to 2^(k+m). As I interpret, each CE can get 2^(a+m) ports and each port range is 2^m. What can we use the 'Block size' for? Thanks in advance! Best Regards, Qi Sun On 2013-1-29, at 上午12:59, Tom Taylor wrote: > I made some editorial comments about Section 5.1 the other day. I have a > substantive comment now, and a text proposal to pull it all together. > > Comment: the statement > > "For a = 0, A MAY be 0 to > allow for the provisioning of the system ports." > > just below Figure 2 is illogical, since if a = 0, the value A does not exist. > In fact, a = 0 returns us to the naive approach in the second paragraph of > Section 5.1. Hence I propose alternative text for the section. Note two > changes to Figure 2: removed extra bit 16 and changed the title. > > > Proposed text: > > 5.1. Port Mapping Algorithm > > The port mapping algorithm is used to represent the port numbers allocated to > a given CE if the CE has been given a shared IPv4 address. > > The simplest way to allocate ports is to allocate one range of consecutive > ports to each CE sharing an address. The Port-Set Identifier (PSID) is an > index over the sequence of allocated ranges, starting from zero. In this > case, assuming that the number of port numbers in each allocated range is a > power of 2, the set of port numbers allocated to a given CE can be > represented using a notation similar to CIDR [RFC4632], but with 16 bits > instead of 32. For example, assuming a range size of 256 port numbers, the > first 256 ports are > represented as port prefix 0.0/8, the last 256 ports as 255.0/8. In > hexadecimal, 0x0000/8 (PSID = 0) and 0xFF00/8 (PSID = 0xFF). > > It can be seen from the example that the lowest PSID values allocate ports in > the system port range [I-D.ietf-tsvwg-iana-ports] to one or more CEs. To > avoid this, the lowest PSID values (0x00 to 0x03 in the example) should not > be used. > > A more sophisticated approach allocates ports in a series of blocks, where > each CE sharing an address receives one range from each block. This can be > represented as shown in Figure 2. > > 0 1 > 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 > +-------+-----------+----------+ > Ports in | A | PSID | M | > the CE port set | > 0 | |any value | > +-------+-----------+----------+ > |a bits | k bits | m bits | > > Figure 2: Three-Part Decomposition of Allocated Port Numbers > > A Indexes the blocks of port numbers. The lowest block number > (A = 0) and possibly others contain the system port numbers, > and hence should not be used if port numbers 0-1023 are to > be avoided. > > a Width of the field containing the block index A. Indirectly > a determines the block size, by the formula: > Block size = 65536 / 2^a > > a = 0 brings us back to the simple (single block) model > described above, where the PSID value rather than the value > of A must be restricted to avoid the system ports. The value > of a is optionally provisioned as part of the mapping rule. > The default value for a is 4, to place the start of the PSID > on a nibble boundary. This leaves ports in the range 0-4095 > unallocated. > > PSID Indexes the position of the allocated range for a given CE > within each block. In the more general model, where A > 0, > PSID values can begin at 0 without causing system ports to > be allocated. > > k Width of the field containing the PSID. The number of CEs > sharing the same IPv4 address is given by 2^k, except when > a = 0 and the lowest PSID values are excluded. > > M Indexes a specific port number within a range determined by > the values of A and the PSID. > > m Width of the port index field. The number of ports in each > allocated range is given by 2^m. > _______________________________________________ > Softwires mailing list > [email protected] > https://www.ietf.org/mailman/listinfo/softwires _______________________________________________ Softwires mailing list [email protected] https://www.ietf.org/mailman/listinfo/softwires
