| CS-534: Packet Switch Architecture
Spring 2007 |
Department of Computer Science
© copyright: University of Crete, Greece |
| [Lectures 2.1, 3.1: Data Structures in Buffer Memories] | [printer version - PDF] |
(a) For each SRAM technology in exercise 3.1(a), what is the peak incoming segment rate that can be supported, in Msegments/s? Hint: Each incoming segment is written into a "random" memory location (address). Thus, for each incoming segment we need to perform an (independent) write memory access. Hence, the peak incoming segment rate that can be supported is one half (50% writes - 50% reads) of the peak (independent) access rate calculated in exercise 3.1(a), except for technologies that have a DQ-bus turn-around penalty where you need to derate their peak Maccesses/s by the turn-around overhead for our specific 4-write-4-read access pattern.
(b) Assume that the incoming traffic is ATM over SONET. For reasons of simplicity of memory management, each ATM cell is written into a different memory segment --hence, approximately 64-53 = 11 bytes in each segment remain unused (the exact number depends on details such as whether the header CRC is stored or just recomputed on the way out, whether any flow ID is stored together with the cell to assist in VP/VC translation in the outgoing path, etc). Thus, the peak incoming cell rate that can be supported is equal to the peak incoming segment rate that you calculated in question (a).
Translate this cell rate into an equivalent "SONET bit rate", for each SRAM technology considered in (a). Of course, SONET bit rates are strictly quantized, as listed in exercise 1.1, but, for the purposes of this exercise, assume that you can linearly scale the SONET bit rate to any number that is needed to provide the desired ATM cell rate; Assume that the percentage of SONET bit rate that is dedicated to SONET overhead (clock recovery, framing, etc) is as in exercise 1.2, i.e. 3.33 percent (3 bytes of overhead in every 90 SONET bytes). Compare the "SONET bit rate" that you find here to the buffer memory aggregate peak throughput in Gbits/s that you found in exercise 3.1(b), for each same technology. How and why do they differ?
(c) Assume, now, that the incoming traffic consists of 40-Byte (minimum sized) IP packets, which are carried in an "IP-over-SONET" technology (not IP-over-ATM-over-SONET). These minimum sized IP packets fit within one buffer memory segment (64 bytes), each. For reasons of simplicity of memory management, again, each such IP packet is written into a different memory segment --hence, approximately 64-40 = 24 bytes in each segment remain unused. Thus, the peak incoming packet rate that can be supported is equal to the peak incoming segment rate of question (a), or to the peak incoming cell rate of question (b).
Translate this packet rate into an equivalent "SONET bit rate", for each SRAM technology considered in (a). Unfortunately, I do not know the exact format of IP-over-SONET, so let us assume, for the purposes of this exercise, that the only SONET overhead, above and beyond the 40 bytes times 8 bits/byte = 320 bits of IP packet payload, is the same as for ATM over SONET, i.e. 3 bytes of overhead for every 87 payload bytes in every 90 SONET bytes (BEWARE: do not use this number in any real design of yours, because it is most probably not the real number!). Also, assume again, contrary to reality, that SONET bit rates are not quantized, and can scale linearly to provide the desired packet rate. Compare the bit rates that you find here to those of question (b) and to those of exercise 3.1(b), and explain the difference.
(d) Next, assume that the incoming traffic consists of 68-Byte IP packets. This is a "bad" size for our buffer memory, because it is just above our segment size (we assume that IP packet sizes are multiples of 4 bytes, otherwise, 65 bytes would be the worst size in this case). In this case, each IP packet needs two (2) memory segments to be written in. For reasons of simplicity of memory management, again, each such IP packet is written into two different memory segments --hence, approximately 128-68 = 60 bytes remain unused in every other segment (30 bytes per segment average fragmentation overhead). In this case, the peak incoming packet rate that can be supported is half of what it was in question (c).
Translate this packet rate into an equivalent "SONET bit rate", for each SRAM technology considered in (a), using the same IP-over-SONET assumptions used in question (c). Compare the bit rates that you find to those found earlier, and explain the difference.
(e) --Optional Question--
Assume again, as in question (c), that the incoming traffic
consists of 40-Byte (minimum sized) IP packets.
This time, however, the traffic arrives
over a number of Gigabit Ethernet links
(see also exercise 1.3).
To calculate the peak packet rate of a Gigabit Ethernet link
when carrying minimum sized IP packets,
consider that:
(f) --Optional Question--
Answer question (e) in the case of 68-Byte IP packets,
as in question (d).
As in (d), two segments per packet are needed,
hence two (independent) buffer memory accesses per packet.
As in question (e), assume Gigabit Ethernet links;
one difference, here, is that
no padding is needed in the ethernet packet body,
since the 68-Byte IP packet size
satisfies the 46 to 1500 byte ethernet packet body requirement.
This exercise is a continuation and generalization of exercise exercise 4.1 above. In this exercise you have to deduce a mathematical formulation for the smallest possible segment size that will not increase the segment access rate beyond the value imposed by minimum packet size. Let us first define the necessary terminology and link technology parameters:
We want to find the smallest segment size sseg
that will maximize the worst-case available segment time
tseg(sp)
for all packet sizes sp.
Start by plotting the available segment time, tseg,
as a function of packet size, sp,
for a given, fixed segment size, sseg,
as in the figure on the right.
Observe the properties of the plot:
which (discrete) values of packet size
are the "most critical" ones?
Clearly, this smallest segment size
must be at least as large as spd_min,
because all packets of size spd_min or less take
(spd_min + sovrh) / rnet
line time;
if the segment size were less than spd_min,
some packets (e.g. packets of size spd_min)
would require a segment time less than this line time
(i.e. a sub-multiple of this minimum packet line time).
Hence,
the worst-case segment time cannot be higher than:
(spd_min + sovrh) / rnet.
Your task is to find the smallest segment size sseg
for which the available segment time
never falls below the above value,
for all packet sizes sp > spd_min.
Given the above "most critical" discrete values of packet size,
conversely, which (discrete) values of segment size sseg
are the "most critical" ones?
Give some kind of a mathematical formulation
or an algorithm for determining the segment size sought.
Finally,
apply your solution to the cases of
(a)
IP-over-SONET, as it was (ill- ?) defined in exercise 4.1(c-d);
(b)
Gigabit Ethernet, as in exercise 4.1(e-f).
| Up to the Home Page of CS-534
|
© copyright
University of Crete, Greece.
Last updated: 16 Apr. 2007, by M. Katevenis. |