1.3 The Network Core
Last updated
Last updated
In a network application, end systems exchange messages with each other
Can perform a control function or can contain data
To send a message from a source end system to a destination end system, the source breaks long messages into smaller chunks of data known as packets
Between source and destination, each packet travels through communication links and packet switches (routers and link-layer switches)
Packets are transmitted over each communication link at a rate equal to the full transmission rate of the link
L bits, R bits/sec, then time to transmit is L/R seconds
Most packet switches use this at the inputs to the links
Packet switch must receive the entire packet before it can begin to transmit the first bit of the packet onto the outbound link
Total delay: 2L/R
Each packet switch: multiple links attached to it
For each attached link, the packet switch has an output buffer (also called an output queue), which stores packets that the router is about to send into that link.
If an arriving packet needs to be transmitted onto a link but finds the link busy with the transmission of another packet, the arriving packet must wait in the output buffer. Thus, in addition to the store-and-forward delays, packets suffer output buffer queuing delays.
Since the amount of buffer space is finite, an arriving packet may find that the buffer is completely full with other packets waiting for transmission. In this case, packet loss will occur—either the arriving packet or one of the already-queued packets will be dropped
How does the router determine which link it should forward the packet onto?
End system: IP address
The source includes the destination IP address in the packet's header (hierarchical structure)
Each router has a forwarding table that maps the destination address (or portions of it) to that router's outboud links
How do forwarding tables get set? Are they configured by hand in each and every router, or does the Internet use a more automated procedure?
Routing protocols: may determine the shortest path from each router to each destination and use the shortest path results to configure the forwarding tables in routers
There are two fundamental approaches to moving data through a network of links and switches: circuit switching and packet switching.