G22.2262
October 22, 1998

Physical Layer Protocols
 

Let's look at other Physical Layer Protocols:

      host -- modem  -------------------------- modem -- host A popular protocol for serial lines:  SLIP (Serial Line Internet Protocol) The protocol:
1. Each packet is terminated by a the C0 character (i.e., 11000000) 2. If a byte in the IP packet is C0, it is replaced with two characters:
DB and DC (11011011 11011100).
3. If a byte has a DB in it, it is replaced with DB and DD.
 

Example:

original packet:
 
c0
db
 
packet sent by slip:
 
db
dc
db
dd
c0
 

Disadvantages:
1.  No "type" field, so it cannot be used for two protocols at the same time.
2.  No checksum.

Advantage:
    Quick and easy!
 

Serial line protocols:

CSLIP (Compressed SLIP)
         PPP (the Point-to-point protocol)
PPP has three components:
1.  A component that transmits packets over a serial link
2.  A "link control protocol" that allows each end to negotiate options; and
3.  A family of "network control protocols" that are specific to different network layer protocols. PPP can be used with IP, OSI, DecNet, Appletalk, etc.
 
PPP frame:
 
 
bytes:
1
1
1
2
0-1500
2
1
flag addr control  protocol data CRC flag 
7E FF 03 7E
 
 
           Reason: some modems interpret 00 to 20 specially.
The link control protocol of PPP:
 
1. used to negotiate to omit the constant addr and control fields.
     - reduces the size of the frame
2. also used to negotiate to reduce protocol field to 1 byte.
                                   1 1 0 0 0 0 1 0 1 0
                   _____________________________
    1 0 0 1 1  ) 1 1 0 1 0 1 1 0 1 1 0 0 0 0
                      1 0 0 1 1
                     ---------
                      0 1 0 0 1 1
                         1 0 0 1 1
                          ---------
                         0 0 0 0 0 1
                            0 0 0 0 0
                             ---------
                            0 0 0 0 1 0
                               0 0 0 0 0
                               ---------
                               0 0 0 1 0 1
                                  0 0 0 0 0
                                   ---------
                                   0 0 1 0 1 1
                                      0 0 0 0 0
                                      ---------
                                      0 1 0 1 1 0
                                         1 0 0 1 1
                                         ---------
                                         0 0 1 0 1 0
                                            0 0 0 0 0
                                             ---------
                                            0 1 0 1 0 0
                                               1 0 0 1 1
                                               ---------
                                                0 0 1 1 1 0  <-  This is the remainder!
 
So, subtract the remainder from the (x^ * M(X)):

               1 1 0 1 0 1 1 0 1 1 0 0 0 0
                      -                      1 1 1 0
               ---------------------------
               1 1 0 1 0 1 1 0 1 1 1 1 1 0

And that's what you transmit!  So you send "1 1 0 1 0 1 1 0 1 1 1 1 1 0" to the pier.  Note that we send the original packet with 4 extra bits. The 4 extra bits is the checksum!

Now, let's call the thing we transmit "T(x)".

T(x) is evenly divisible by G(x).

  • Because in any division, if you dimish the dividend by the remainder, the amount left is divisible by the divisor!
  • So, when the receiver gets the bits, they divide it by G(x) (i.e., 10011), and the result should have no remainder!  If the result has no remainder, the receiver says the packet passed the checksum!  The receiver chops off the last 4 bits and send the packet up to the next layer.