Title: TCP/IP ????
1TCP/IP ????
2? ?? ??
2? ?
- 2.1 Introduction
- 2.2 Ethernet and IEEE 802 Encapsulation
- 2.3 Trailer Encapsulation
- 2.4 SLIP Serial Line IP
- 2.5 Compressed SLIP
- 2.6 PPP Point-to-Point Protocol
- 2.7 Loopback Interface
- 2.8 MTU (maximum transmission unit)
- 2.9 Path MTU
- 2.10 Serial Line Throughput Calculations
- 2.11 ??
32.1 Introduction
- ????? ??
- IP module? ?? IP datagram? send/receive
- ARP module? ?? ARP request? reply
- RARP module? ?? RARP request? reply
- TCP/IP? ?? ?? Link Layer? ????
- ?, TCP/IP ????? ?? ??? ??? ???? ???? ??? ? ???
???? ??. - Ethernet, token ring, FDDI, RS-232 serial line,
etc.
42.2 Ethernet and IEEE 802 Encapsulation
- Ethernet
- ????? DEC, Intel, Xerox?? 1982?? ??? ??? ????
CSMA/CD (Carrier Sense, Multiple Access with
Collision Detection) ?? ?? access method? ?? - ???? 10Mbps, 48-bit address
- IEEE 802 ???
- 802.2 LLC(Logical Link Control)
- 802.3 CSMA/CD
- 802.4 token bus
- 802.5 token ring
52.2 Ethernet and IEEE 802 Encapsulation (Contd)
- IP datagram encapsulation define
- Ethernet? ?? RFC 894
- IEEE 802 network? ?? RFC 1042
62.2 Ethernet and IEEE 802 Encapsulation (Contd)
- Host Requirement RFC
- RFC 894(Ethernet) encapsulation? ???? packet?
???? ? ??? ?? - RFC 894 packet? ??? RFC 1042(IEEE 802) packet?
??? ? ??? ?? - RFC 1042 encapsulation? ??? packet? ??? ?? ???
??. ???? ? ??? packet? ??? ? ??? ??? packet? ???
??? ? ??? ?? ?? ??? RFC 894? ??? ??. - RFC 894 encapsulation? ?? ????? ???? ??.
7IEEE 802.2/802.3 ???(RFC 1042)? ??? ???(RFC 894)
type
IP datagram
0800
2
46-1500
type
ARP request/reply
PAD
0806
2
28
18
type
RARP request/reply
PAD
0835
28
18
2
82.3 Trailer Encapsulation
- RFC 893? trailer encapsulation??? ?? ? ?? ???
Ethernet encapsulation? ?? - ??? IP datagram? ?? ??? ????? ?? ??? ?? ????
????? - ?, IP? TCP header? data ??? ??? ????? data?
kernel?? ??? ? memory to memory copy? ?????
?????? ? ?? - ??? ???? ??
92.4 SLIP Serial Line IP
- RFC 1055
- RS-232 serial port? ?? Internet? ??? ? ??
- framing rule
- IP datagram? ??? special character END(0xc0)? ??.
?? ?? line noise? ???? ???? ?? ?? ??. - IP datagram ?? 0xc0? 0xdb, 0xdc? ???? ??(0xdb?
SLIP ESC character? ?) - IP datagram ?? 0xdb? 0xdb, 0xdd? ???? ??
102.4 SLIP Serial Line IP(Contd)
- SLIP? ??
- ? end system? ??? IP address? ?? ??? ??. ?, IP
address? ?? ? ??? ??. - Ethernet? type field? ??? type field? ??. ??
serial line? SLIP? ???? ??? ??? ?? protocol? ???
? ??. - SLIP? Ethernet? CRC? ?? ??? checksum? ?? ???.
SLIP? ?? ???? ?? datagram? ???? ?? ??? ? ??, ??
?? ??? ???? ??. ??? IP? header checksum, TCP?
header? data checksum, UDP? header?
data(optional) checksum? ?? ????.
112.5 Compressed SLIP
- RFC 1144 Jacobson 1990a
- SLIP line? ??(19200bits/sec or below)??
interactive traffic(TCP? ???? Telnet or Rlogin)?
??? ?? 1 byte? ???? ?? 40bytes(TCP 20, IP20)?
overhead? ??. - ??? ???? ??? ???? ?? CSLIP? ??
- ????? ?? ??? ???? ? header? ?? field? ??? ????
??? ???? 40 bytes? header? 3 or 5 bytes? ??? ??.
??? ??? ?? header? interactive response time? ??
????.
122.6 PPP Point-to-Point Protocol
- PPP? SLIP? ?? ??? ???? ??? ?? 3?? ??? ????.
- Serial link?? IP datagram? encapsulation?? ??.
PPP? 8 bits data, no parity? ???? asynchronous
link? bit-oriented synchronous link? ?? ????. - Data-link connection? ??, ??, ??? ?? ?? LCP(Link
Control Protocols). ??? ? end system? ??? option?
??? ? ??. - NCP (Network Control Protocols)? ?? ???? ??? ????
??. ?? IP, OSI network layer, DECnet, AppleTalk?
?? RFC? ??.
132.6 PPP Point-to-Point Protocol (Contd)
- RFC 1331 encapsulation method and link control
protocol - RFC 1332 network control protocol for IP
142.6 PPP Point-to-Point Protocol(Contd)
- information field? 0x7e? ??? ??
- ??? ??? ?? bit stuffing
- ???? ??? ?? escape character(0x7d) ???? escape
character? PPP frame? ??? ??(? ?? ???? 6?? bit?
??? ??) - 0x7e? 0x7d, 0x5e
- 0x7d? 0x7d, 0x5d
- 0x20?? ?? ?? ??? ???? ??? ?? ??. ?? ?? 0x01?
0x7d, 0x21? ??? ??. ?? ???? ???? serial driver?
ASCII control character? ???? ?? ?? ??.
152.6 PPP Point-to-Point Protocol(Contd)
- SLIP? ????? constant(flag, address)? ????
protocol? 1 byte? ?? ??? ? ??. ??? ? ???? 3
byte(CRC 2, protocol 1)? overhead? ??. ?? CSLIP?
????? IP, TCP header? ??? ??? ??? ? ??. - SLIP?? PPP? ?? ??
- ? serial line? multiple protocol? ??
- ? frame? cyclic redundancy check
- IP network control protocol? ???? IP address? ??
?? ?? - CSLIP? ??? TCP, IP header compression
- link control protocol? ?? ??? data-link option ??
- ????? ??? ??? 3 byte? overhead, link? ??? ? ???
?? ?? ? ?? frame, ?? ? ??? ??? ?? ????.
162.7 Loopback Interface
- ?? ????? client? server? TCP/IP? ???? ???? ?? ???
loopback interface? ?? - ??? localhost, IP address? 127.0.0.1
172.7 Loopback Interface (contd)
- Key points
- loopback address? ??? ?? ?? IP input? ????.
- broadcast or multicast address? ??? datagram?
loopback interface? ???? Ethernet?? ????. ??
broadcasting? multicasting? ??? sending host?
???? ????. - ??? IP address ? ??? ??? ?? ?? loopback
interface? ????. - ?? transport? IP layer? loopback data? ???? ??
?????? ???? ????? ?? network layer?? loopback
interface? ?? ?? link layer? ??? ??? ??? ??? ???. - ?? ??? IP address ? ??? ??? IP datagram? ???? ??
??? ??? ?? ??? ?? ????.
182.8 MTU
- frame? ??? ???? link layer? ??? MTU (maximum
transmission unit)? ??. - IP datagram? link layer? MTU?? ?? fragmentation?
???? ? fragment? MTU?? ??? ??. - ? ? Point-to-Point? ?? MTU? network media? ???
??? ?? ?? ??? ??? ??? ??? response? ???? ?? ????
??.
MTU(bytes)
Network
Hyperchannel
65535
16 Mbits/sec token ring(IBM)
17914
4 Mbits/sec token ring(IEEE 802.5)
4464
FDDI
4352
Ethernet
1500
IEEE 802.3/802.2
1492
X.25
576
Point-to-Point(low delay)
296
192.9 Path MTU
- ? ???? ?? network ??? ??? ?? MTU? ??? factor??.
- ??? ? ??? ??? multiple network? ???? ?? ?? ? ????
??? network? MTU ??? ?? network? ?? ?? MTU? ?
???? ?? path MTU? ??. - Path MTU? ???? ??? ?? ?? ??? ??? ??? ???? ????.
- ?? routing? ??? ???. ?, A?? B? ?? ??? B?? A? ??
??? ?? ? ?? ????. ??? path MTU? ? ??? ?? ?? ? ??. - RFC 1191?? path MTU? ???? ?? ??(path MTU
discovery mechanism)? ???? ??.
202.10 Serial Line Throughput Calculations
- line speed 9600bps, data 8 bits, start 1 bit,
stop 1bit? ?? 960 byte/sec?? 1024 byte packet ???
1066ms? ????. - ??? ???? SLIP link ??? 1024 byte frame? ???
application? interactive application? ???? ??
interactive packet? ???? ?? 1066/2 533ms? ????
??. - Interactive traffic? 100-200ms? ???? ?? ?? ???
????Jacobson 1990a(?? ?? ??) - MTU? 256? ?? 266ms(256/960) ???? ?? wait?
133ms??. 133? ??? throughput? ??? 64? 128???
utilization? ??.
212.10 Serial Line Throughput Calculations(Contd)
- Point-to-Point link?? MTU? 296?? ?? ??
- 25640(TCP IP header)296??. ??? CSLIP? ???? ??
40? 5? ??? ??? 261byte frame? ?? 261 ???
98.1(256/261)? data, 1.9(5/261)? header??? ??
utilization ??? ? ? ??.
222.11 ??
- ???? IEEE 802.2/802.3???? ???
- SLIP? PPP ??? ???
- SLIP? PPP? ? ? ?? ???? ???? ??? ?? ??? ?? ???
???? ???? - ??? ?????
- MTU? path MTU