[Back to Lecture Notes page]
Keep in mind that the DLL is only responsible for communication between TWO adjacent machines. Real networks obviously consists of a lot more than two machines, and machines will need to communicate with other machines which are not adjacent to it (ie. the sender and receiver are separated by a few intermediate machines). How messages from one machine get to another one a few "hops" away is NOT the responsibility of the DLL. Higher level layers (principally the Network layer) will work that out. The higher level layers will work out which is the next machine they need to pass the message to, and then give it to the DLL and say, "now you send it to that machine the best way you know how".
The discussion here (and in the textbook) is on general features common to all the different versions developed by the different organisations.
Figure 3-24 Tanenbaum textbook p226.
The network layer protocol knows which is the next machine the packet should go to. It lets HDLC know the address of that machine. Since DLL only deals with adjacent machines, all of the possible destinations have a direct line to this machine. The job of HDLC is to determine which of those lines it is suppose to use based on the address the network layer protocol gave it.
But think about it, what is the point of having this address field in the frame? Since this frame is being sent DIRECTLY to another machine, there is no point, since all the DLL on the receiver will see is it’s own address in the frame. Therefore, this address field is only relevant in networks which sometimes doesn’t have higher level layer protocol in intermediate machines. In these cases, HDLC has to do some rudimentary routing, and uses the address field to do so. This is one of many examples of real networks not following the ideals set out by reference models – either for historical reasons, or implementation reasons.
We will look at LANs (local area networks) a lot more closely in the next topic.
In these two situations, we still have two adjacent machines communicating with each other.
RFCs stands for Request for Comments. They are documents published by the IETF (Internet Engineering Task Force). Most standards relating to the Internet comes in the form of RFCs. The main site for RFCs is http://www.rfc-editor.org . You will find a listing of other local RFC repositories from there.
0xC0 is a hexadecimal (base 16) number. In one byte (8-bits), it corresponds to the binary number 11000000. Don’t worry about this detail – just think of it as a special sequence of bits.
Any network layer protocols will have to do error correction or detection themselves if they want to use SLIP.
What this means is that SLIP assumes that packets coming from the network layer are put together by the network layer protocol called the Internet Protocol, or IP (we will look at the format of IP packets in the topic on the Network Layer). This means if my network doesn’t use IP in the network layer, I can’t use SLIP in my DLL.
This is a big problem because most networks these days allocate their IP address dynamically on set-up. So, for example, when your modem dials in to your ISP, it gets allocated an address no one else connected to your ISP is using at that moment. This mean SLIP won’t work, because without that number to begin with, SLIP won’t even be able to connect to your ISP.
SLIP doesn’t provide a way of asking the machine on the other side to verify it is the correct machine.
Eg, when a modem connects to an ISP server using PPP, the line is initially established by one side dialling and another side answering. Then test frames gets sent back and forth at an appropriate speed as indicated by the modem specifications, errors are detected and the speed is adjusted higher or lower until a satisfactory speed is reached. This is one example of the concept of negotiation at connection time.
Figure 3-27 Tanenbaum textbook p232.
In the case of PPP, it assumes there are no intermediate machines between the sender and the receiver. So different address values are not necessary, since the sender will be putting in on a "direct line" to the receiver.
Figure 3-28 Tanenbaum textbook p233.
The two protocols used in PPP for authentication today are Password Authentication Protocol (PAP) and the Challenge Handshake Authentication Protocol (CHAP).
If either 1 or 2 fails, the connection terminates. The "carrier" mentioned in the figure is the signal used in the transmission (eg. your dial tone over a phone line).
Figure 1-30 Tanenbaum textbook, pg 63.
ATM uses the word cell instead of frame. It is the same concept.
The format of an ATM cell is given in Figure 5-62. Have a look if you’re curious, but we’re not too concerned with the details of it at this stage. Most of the cell content deals with services which we will talk about in the topic on the Network Layer.
The checksum is ONLY for the header. Error control for the data from the higher layers is left to the higher layers. As I mentioned, most of the other parts of the header is actually constructed by the higher layers.
Note: In your readings in section 3.6.3 on the DLL in ATM, for the purpose of the exam, don’t worry about the lines mentioning SONET since I haven’t had time to cover it in the physical layer. Also, don’t worry about the details on page 237-238 under the heading "Cell Reception". I have modified the Readings page accordingly.
[Back to Lecture Notes page]