TCP/IP 통신망 특론 2장 Link Layer 컴퓨터 네트워크 실험실 이희규.

Slides:



Advertisements
Similar presentations
CPU 3 특성 Athena CPU 3 는 기존의 Athena 보 드에서 5 차례 성능 업그레이드가 있 었다. 각각의 보드는 128bytes 의 패킷으로 두개의 완전히 로드된 8Mbps, 4 개의 완전히 로드된 4Mbps 또는 8 개의 완 전히 로드된 2Mbps Trunk.
Advertisements

정보통신 개론.
멀티미디어 서비스를 위한 IP 네트워크 순천향대학교 정보기술공학부 이 상 정
11 장 데이터 링크 프로토콜 11.1 비동기식 프로토콜 11.2 동기식 프로토콜 11.3 문자-중심 프로토콜
Young-Tae Han 데이터 링크 제어 Young-Tae Han
조준희 (Cho, Junhee) TCP/IP 조준희 (Cho, Junhee)
Chapter 7 ARP and RARP.
PC와 인터넷 정강수 컴퓨터 구조와 웹의 이해 PC와 인터넷 정강수
TCP/IP 통신망 특론 3장 인터넷프로토콜( IP ).
Internet Protocol Version4
4 통신 프로토콜과 표준화, 최근 표준화 협력 방향.
컴퓨터 네트워크 제 1 장 LAN 담당교수 : 천 성 광.
Data Communications 제4장 데이터통신의 기본 개념.
Chapter 7 Networking.
암호화 기술(SSL, IPSec) 손재성 권기읍 안복선 최준혁
Chapter 06. 프로토콜.
네트워크 개요 Network의 이해 Network Cabling Ethernet.
IPsec 석진선.
제 1장 인터네트워킹.
Chapter 2: LAN 기술 및 네트워크 장비 규격
Underlying Technologies
Dept. of Computer Engineering, Hannam Univ. Won Goo Lee
20 장 네트워크층 프로토콜 : ARP, IPv4, ICMP, IPv6, ICMPv6
Internet Group Management Protocol (IGMP)
Internet Control Message Protocol (ICMP)
2. LAN의 연결구조와 공유매체 접근제어 (3장. LAN: Local Area Network)
Network 네트워크 이론 및 실습 TCP / IP 4장.
ARP TARM PROJECT 1조 신영민.
PART 01 개념 컴퓨터 네트워크 Chapter 3 OSI 참조모델과 인터넷 임효택.
10. About TCP / IP SPARCS 08 우성필.
PART 1 개념 컴퓨터 네트워크 Chapter 01 서론 임효택.
제 4장 주소변환 프로토콜 (ARP : Address Resolution Protocol)
제 18 장 TCP/IP 연결 확립과 종료 정보통신연구실.
Internet 및 EC 관련 기술들.
Chapter 02 네트워크에 대한 이해.
4주 : 정보통신 네트워크 인터넷정보원 및 학술정보자원의 활용 담당교수 : 박 양 하 정보통신시스템 – 정보전송/처리시스템
Underlying Technologies
PART 02 프로토콜 컴퓨터 네트워크 chapter 06 트랜스포트 계층 임효택.
12 장 근거리 통신망(LAN) 12.1 프로젝트 이더넷(Ethernet)
PPP (Point-to-Point Protocol)
12 장 점 대 점 접근 : PPP 12.1 점 대 점 프로토콜 12.2 PPP 스택 12.3 요약.
S N M P (Simple Network Management System).
11장 데이터 링크 제어 (DLC: Data Link Control)
제 14 장 도메인 네임 시스템 정보통신연구실.
PART 01 개념 컴퓨터 네트워크 Chapter 3 OSI 참조모델과 인터넷 임효택.
TCP/IP 네트워크 2장 링크 계층.
컴퓨터 네트워크 개념, 프로토콜, 프로그래밍 임 효 택, 송 주 석 dongseo. ac
Data Communications 제 4 장 OSI 참조 모델.
디지털-아날로그 부호화.
IP(Internet Protocol)
9장 데이터링크층 소개 (Introduction To Data-Link Layer)
C C N A (9.1.1 ~ 9.3.1) 4 조 조래한 민종혁 최유성.
(Wired LANs : Ethernet)
제 24 장 그 밖의 TCP 기능과 성능 정보통신연구실.
IPv 이 동 주 HONGIK UNIVERSITY.
네트워크와 소켓 프로그래밍 Chapter 01. * 학습목표 TCP/IP 프로토콜의 동작 원리를 개관 소켓의 기본 개념을 이해
3장. LAN (Local Area Network)
Chapter 03. 네트워크 통신.
OSI 모델 OSI 모델의 개념과 필요성 OSI 모델의 데이터 전송 과정 OSI 모델 7계층 한빛미디어(주)
5장 RARP (Reverse Address Resolution Protocal) 시스템 소프트웨어 실험실 남 상 온
Data Communications 제2장 데이터통신의 기본 개념.
Chapter 04. OSI 참조 모델.
TCP/IP 네트워크 구조 TCP/IP 개요 TCP/IP 프로토콜 한빛미디어(주).
팀 프로젝트 [데이터통신] 김진억 성보라 문제명 박상민 이혜영.
Internet & WWW Protocols
김 형 진 전북대학교 IT응용시스템공학과 네트워크의 기본 Chapter 김 형 진 전북대학교 IT응용시스템공학과.
시스코 네트워킹 (CCNA) 1주차.
모바일인터넷기초 전산정보학부 모바일인터넷과 권 춘 우
Part TCP / IP 1. TCP / IP 프로토콜 2. 기본 프로토콜.
3. LAN의 주소지정과 프레임 (3장. LAN: Local Area Network)
Presentation transcript:

TCP/IP 통신망 특론 2장 Link Layer 컴퓨터 네트워크 실험실 이희규

목 차 2.1 Introduction 2.2 Ethernet and IEEE 802 Encapsulation 목 차 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 요약

TCP/IP는 서로 다른 Link Layer를 지원한다 2.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.

2.2 Ethernet and IEEE 802 Encapsulation 일반적으로 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

2.2 Ethernet and IEEE 802 Encapsulation (Cont’d) IP datagram encapsulation define Ethernet에 대한 RFC 894 IEEE 802 network에 대한 RFC 1042

2.2 Ethernet and IEEE 802 Encapsulation (Cont’d) 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이 가장 일반적으로 사용되고 있다.

IEEE 802.2/802.3 캡슐화(RFC 1042)와 이더넷 캡슐화(RFC 894) 6 2 1 3 38-1492 4 dest addr leng DSAP AA SSAP cntl 03 org code 00 type CRC data src 802.3 MAC 802.2 LLC 802.2 SNAP IEEE 802.2/802.3 Encapsulation(RFC 1042) 0800 IP datagram 28 0806 ARP request/reply 10 PAD 0835 RARP request/reply 46-1500 Ethernet Encapsulation (RFC 894) 46-1500 bytes type IP datagram 0800 2 46-1500 type ARP request/reply PAD 0806 2 28 18 type RARP request/reply PAD 0835 2 28 18

2.3 Trailer Encapsulation RFC 893은 trailer encapsulation이라고 하는 또 다른 형태의 Ethernet encapsulation을 설명 이것은 IP datagram의 필드 순서를 바꿈으로서 성능 개선을 꾀한 실험에서 비롯되었음 즉, IP와 TCP header를 data 부분의 끝으로 옮김으로써 data가 kernel내로 복사될 때 memory to memory copy가 효율적으로 이루어지도록 한 것임 현재는 사용되지 않음

2.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로 변환하여 전송

2.4 SLIP : Serial Line IP(Cont’d) 각 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이 이를 담당한다.

2.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을 많이 개선한다.

2.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가 존재.

2.6 PPP : Point-to-Point Protocol(Cont’d) RFC 1331 : encapsulation method and link control protocol RFC 1332 : network control protocol for IP

2.6 PPP : Point-to-Point Protocol(Cont’d) 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로 인식하는 것을 막기 위함.

2.6 PPP : Point-to-Point Protocol(Cont’d) 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, 훨씬 더 복잡한 구현에 대한 대가이다.

2.7 Loopback Interface 같은 호스트내의 client와 server가 TCP/IP를 이용하여 통신하기 위해 대부분 loopback interface를 제공 이름은 localhost, IP address는 127.0.0.1

2.7 Loopback Interface (cont’d) 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은 네트워크 상에 절대로 나타날 수가 없다는 것을 암시한다.

4 Mbits/sec token ring(IEEE 802.5) 2.8 MTU frame의 크기를 제한하는 link layer의 특성을 MTU (maximum transmission unit)라 한다. IP datagram이 link layer의 MTU보다 크면 fragmentation이 일어나며 각 fragment는 MTU보다 작아야 한다. 이 중 Point-to-Point에 대한 MTU는 network media의 물리적 특성에 따른 것이 아니라 대화형 응용의 적당한 response를 제공하기 위한 논리적인 제한. Network MTU(bytes) 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

2.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)을 설명하고 있다.

2.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이 좋다.

2.10 Serial Line Throughput Calculations(Cont’d) Point-to-Point link에서 MTU를 296으로 정한 이유 256+40(TCP + IP header)=296이다. 그러나 CSLIP을 사용하는 경우 40을 5로 줄이기 때문에 261byte frame이 되고 261 중에서 98.1%(256/261)는 data, 1.9%(5/261)가 header이므로 좋은 utilization 이라고 할 수 있다.

2.11 요약 이더넷과 IEEE 802.2/802.3캡슐화의 차이점 SLIP과 PPP 캡슐화 차이점 루프백 인터페이스 MTU와 path MTU