home *** CD-ROM | disk | FTP | other *** search
-
- A Day in the life of Ivan DnCLNPacket
-
- by: Robert Hagens
- University of Wisconsin
- hagens@cs.wisc.edu
-
- Introduction
-
- An OSI End System. Layered. Complicated. This was a place where
- packets lived a hard and fast life. This is the story of
- one particular packet. This story is not a unique one.
- It happens every day. It may already have happened to you.
-
- Ivan, a CLNP packet from birth, worked on the Connectionless Squad (CL).
- His squad leader, Mikhail, had been running the Connectionless network
- layer for 15 years. Ivan was lucky to be in the CL squad.
- He had heard all the stories from Ivan about the other guys in the
- compound -- the Connection-oriented squad. The Gosip was that
- life in the CO squad was brutal. The CO squad leader enforced his
- reliable, guaranteed delivery service with an iron fist.
-
- Luckly, Mikhail was fair, Ivan diligent. The absence of a
- delivery guarantee for CLNP packets promoted a laissez-faire
- atmosphere in the CL squad which permeated all its members.
- Yes, there was envy from the CO squad, but lack of CO/CL communication
- meant that he chance of a transfer between them was small.
-
- The Squad Room
-
- Ivan was already bored with Mikhail's briefing. He already knew that he was
- a full CLNP packet and not a member of either of the two
- subsets of the CLNP family. The non-segmenting subset, thought Ivan, was
- only for those packets who were so sure that they would not be segmented
- that they opted to save 6 bytes by not carrying the segmentation information
- along. This segmentation information would be used if the packet was
- split into several, smaller packets by an Intermediate System. This process,
- (segmentation) was used if the packet was too large for a transmission
- link to handle. The separate pieces of the packet would journey toward their
- destination independently -- to be merged together once they reached
- the destination.
-
- Although Ivan was secretly frightened by the thought of being
- carved up into many pieces by some unknown, butcher router,
- he tried to project an outward excitement about the segmentation experience.
-
- Of course, Ivan was very happy he was not a member of the Inactive network
- layer subset. He had heard stories about these strange relatives with a 1
- byte header containing only an identification field. What a strange
- life it would be -- inactive until the end! Better to die
- while living...
-
- Ivan looked at his header in the hunk of stainless steel on the wall
- that served as the squad's mirror. The fixed part was complete: his
- header length set, his lifetime filled with a comfortable value of 30,
- his type set to normal data, and his checksum (courtesy of Fletcher)
- computed. The checksum, of course, was only computed on his header.
- Ivan liked this. He would only worry about his header. The data he
- carried belonged to a transport connection. He was glad to let the
- transport connection worry about their data with their own checksum.
-
- Data. Normal data. That was Ivan's type of packet. Better to be
- a normal data packet than a ghastly Error Report. No one liked the bearer
- of bad news. It was a dangerous profession; especially in this compound.
- It was much better to transport data than the remains of some
- unknown, discarded packet.
-
- The other parts of Ivan's header were in place. His addressing part
- was complete with a source and destination NSAP address. His segmentation
- part initialized and ready to be used if (his mind raced at the thought)
- segmentation were to occur.
-
- The final section of Ivan's header, the options part, contained
- a few of the possible CLNP options.
-
- "You will notice, Ivan", Mikhail's voice brought Ivan's attention
- back to the front of the room, "that I have given you several optional
- parameters. I have added the Padding Option to increase your total
- header length to a multiple of 4 bytes. You also have a source route
- and record route option. You will visit each router in the source route
- list during your journey through the network. The record route option
- will be used to log the addresses of all the routers you visit.
- Every time you visit a router, he will write his address in the space I
- have created."
-
- "Why is the source route so small and the record route so large?" asked
- Ivan. Mikhail explained that Ivan's source route was not a complete listing
- of every router that must be visited. Rather, as a partial source route,
- it only listed a few of the routers to be visited.
-
- "So I can visit as many routers as I wish, as long as I visit
- the ones listed in the source route, in the order listed?", interrupted Ivan.
- "That's right", Mikhail said. "But keep in mind that your record route
- option is fixed in size".
-
- "Huh?"
-
- "Your record route option is large enough to contain the address of
- many routers. However, its size was fixed when you were created. The option
- can not expand during your journey. If you visit so many routers that your
- record route option is filled with all the addresses, the recording will
- have to be terminated."
-
- "Well, I'll be careful.", reassured Ivan.
-
- "Indeed. And watch your lifetime. It will decrease as you travel. If
- it reaches zero, you'll be discarded."
-
- "Don't worry, Mikhail. My lifetime is 30! I have plenty of time."
- With that, Ivan scrambled out the door, ready to begin his journey.
- "That's what the last packet thought as well", Mikhail whispered.
-
- The Network Swamps
-
- The first few routers that Ivan visited were not very busy
- and the trip was uneventful. Whenever Ivan arrived at an
- Intermediate System, that system would write its address into Ivan's
- record route option, and Ivan's lifetime field would be decremented.
- With a new header checksum computed, Ivan was immediately forwarded out onto
- a link towards his destination. In fact, until he reached the long-haul
- backbone, Ivan didn't even notice the steady tick-tick-ticking of his
- lifetime field.
-
- The moment Ivan appeared on the backbone router's input queue,
- he felt that something was wrong. The heat was intense. The room noisy.
- He stood in line trying to gauge the length of the queue.
- It looked like 6, maybe 7 packets were already waiting.
- Judging by the size of their lifetime fields, many had been traveling
- for a long time. Ivan waited impatiently to get closer to the front
- of the line. Suddenly, as he was about to step up to be routed,
- 2 other packets jumped in front of him.
-
- "Wait a minute!" Ivan started to shove.
-
- The big, blue router looked down,
- "Priority Packets, kiddo. If ya don't have a priority option, yer
- priority is low."
-
- Ivan waited for the priority packets to leave.
- He stepped up to the router.
-
- "Destination?"
-
- Ivan told him.
-
- "Ok. T'ird link from da left. Ya's been here awhile. Cut da lifetime
- field by foah."
-
- "Four, FOUR?", Ivan couldn't believe his ears.
-
- "Look fella", the router mumbled, "yer a CLNP packet. Dat means yer
- lifetime ain't no hop count. It's a time field. And ya been here awhile."
-
- Ivan ran to the link. His lifetime was down farther than he thought
- possible. He knew that if the lifetime field dropped to zero, he would
- be discarded. Like many packets, he didn't think it could happen to him.
- He wasn't ready to die. As he jumped down the link, he wondered
- if he would see those quiet regional networks again...
-
- The next few routers on the backbone were no better. Long delays at each
- one spelled trouble. One of the routers was so congested that it
- was dropping packets at random. Ivan was horrified to watch the packet
- in front of him get discarded, wrapped up in an Error Report, and shipped
- back towards its source. Other packets at that router were
- getting their Congestion Experienced bits turned on.
-
- When it was Ivan's turn, the router looked at him with distaste.
- "You don't have a Quality of Service Option".
- "I don't?", Ivan half questioned.
- "No. You don't."
- Ivan did not understand that the congestion experienced
- bit was part of the quality of service option. Since that option was not
- required on every packet, it wasn't always available to be set.
-
- "We backbone routers rely on the QOS congestion experienced bit to
- inform the transport connections that we are congested. What part of the
- network do you come from, anyway?"
-
- Ivan started to list his record route option. The bored router
- interrupted,
- "Never mind. Begone. Last link on the right".
-
- Ivan never made it to his destination. His lifetime expired somewhere
- between the far side of the backbone and his destination subnetwork.
- His data was discarded. His header not even returned to the compound,
- for the system that discarded him did not care to send an Error Report.
-
- Ivan's epitaph read:
-
- Run, don't plod.
- Take it from me.
- Behold, behold the links I trod
- for ISO 8473.
-
-
- [All characters are fictious, no referenece to any packet or router,
- past present or future is intended or should be construed.]
-
-