Presentation is loading. Please wait.

Presentation is loading. Please wait.

Internet 개요 Internetworking : an overview of concepts, terminology, and technology underlying the TCP/IP Internet protocol suite and the architecture of.

Similar presentations


Presentation on theme: "Internet 개요 Internetworking : an overview of concepts, terminology, and technology underlying the TCP/IP Internet protocol suite and the architecture of."— Presentation transcript:

1 Internet 개요 Internetworking : an overview of concepts, terminology, and technology underlying the TCP/IP Internet protocol suite and the architecture of an internet based on “Introduction to TCP/IP and Internetworking” by Douglas Comer http://www.cs.purdue.edu/people/comer

2 다루는 내용 인터넷 용어 TCP/IP 인터넷 모델 개념 인터넷 구조와 라우팅의 기본 TCP 와 IP 등의 프로토콜 기능

3 다루지 않는 내용 벤더, 하드웨어 제품, 소프트웨어 제품, 서비스, 비교, 또는 가격에 대한 리스트 IPX, AppleTalk 등의 다른 기술 등

4 목 차 개요 네트워크 하드웨어와 물리적 주소기법 인터넷 모델과 개념 인터넷 주소 상위레벨 프로토콜과 계층화 원리 인터넷 구조와 라우팅 프로토콜 예 응용 서비스

5 Internet Architecture Board 연구개발자들 사이의 정보교환 포럼 1989 년에 재편 1992 년에 Internet Society 와 합침 이전에는 Internet Activities Board 라 부름

6 IAB 조직 IAB – Board that oversees and arbitrates IRTF(Internet Research Task Force) –TCP/IP 와 internetworking 에 대한 연구 조정 –Internet Research Steering Group – 여러 연구 그룹들로 구성

7 계 속 IETF(Internet Engineering Task Force) – 프로토콜과 인터넷 engineering 을 조정 – Internet Engineering Steering Group –8 개의 area 로 분류 Application, General, Operation and Management Internet, Routing, Transport, Security, User Services –working group(WG) 들로 구성

8 Internet Society 연구, 학술교류, 공동작업 등에 인터넷 사 용을 장려하기 위한 국제 조직 1992 년 조직 비영리 단체 Board of Trustees 에 의해 지도 http://www.isoc.org

9 Request For Comments(RFCs) TCP/IP 프로토콜, Internet, 관련 기술들 에 대한 보고서 Edited, not refereed surveys, proposals, measurements 그리고 protocol standard 를 포함 Numbered in chronological order Always evolving Available on-line

10 For Your Information Notes(FYIs) Subset of RFCs TCP/IP 와 Internet 에 관련된 일반적인 정 보를 제공 초보자를 대상으로 하며, 표준이 아님 RFC 1177 : –FYI On Questions and Answers to Commonly Asked “New Internet User” Questions

11 Best Current Practices(BCP) Subset of RFCs 인터넷 community 를 위한 정보와 힌트를 포함 IESG 가 리뷰하고 승인 프로토콜 표준이 아님 RFC 1818 참조

12 TCP/IP 표준 Internet Official Protocol Standards RFC – 년 4 회 발간 – 모든 TCP/IP 프로토콜의 현상태를 나열 Standard Track –proposed standard –draft standard –full standard

13 Internet Drafts Preliminary RFC IETF WG 들이 작성 Available on-line 6 개월 내에 RFC 가 되거나 없어짐 @Internet Monthly Reports –ftp://ftp.isi.edu/in-notes/imr

14 What Is Internetworking? 매우 성공적인 컴퓨터 통신 기술 Primarily S/W, not H/W Universal interconnection 프로토콜 표준 서비스 – 응용 계층 – 네트워크 계층

15 인터네트워킹의 목표 To maximize interoperability of distributed computations across vendors and products

16 An Internetwork (Internet) Collection of interconnected, cooperative networks 모든 컴퓨터가 통신을 위해 공통의 언어 ( 프로토콜 ) 을 사용 하나의 통신망 시스템처럼 작동

17 TCP/IP 기술의 로칼과 글로발 사용 로칼 환경 –On single machine for inter-process communication –Among some of the machines on a local net –Among machines at multiple sites within a given organization 글로발 환경 –To connect machines at a given site to the rest of the world

18 TCP/IP 인터넷 Spans all over the world Original R&D (ARPA by DoD) later funded by NSF 현재는 상용화 단계 매년 100% 의 신장률

19 TCP/IP 서비스 응용 서비스 신뢰성있는 전송 서비스 비연결성 패킷 전송 서비스

20 네트워크 레벨 TCP/IP 서비스 최하위 레벨 ( 패킷 전달 ) – 비연결성 –best-effort 서비스 트랜스포트 레벨 ( 스트림 전송 ) – 가상회선 연결 사용 –reliable delivery – 흐름 제어

21 응용 계층 TCP/IP 서비스 전자메일 네트워크 뉴스 파일 전송 원격 로그인 원격 수행 원격 파일 접속 브라우징을 위한 정보 아카이브 비디오와 오디오 통신

22 네트워킹 H/W 기본과 정의 다룰 내용 – 기본적인 네트워크 개념 리뷰 –Physical Network 기술 예제 –Physical (hardware) addressing 소개

23 하드웨어의 사용 TCP/IP 는 소프트웨어로 구성 TCP/IP 는 heterogeneous 네트워크를 수용 TCP/IP 는 모든 종류의 네트워크 하드웨 어를 사용할 수 있도록 설계됨

24 네트워크 H/W 의 두 가지 분류 Connection oriented Connectionless

25 Connection Oriented (Circuit Switched Technology) Lease a “connection” through the network 고정대역폭 보장 효율성을 최대화할 수 없다. 실시간 응용에 필요 예 : 전화시스템

26 Connectionless (Packet Switched Technology) Accepts and delivers “packets” of data 각 패킷은 독립적으로 전달됨 각 패킷에 목적지 식별자를 포함 효율성 (utilization) 의 증가가 동기 각 패킷은 서로 다른 크기를 갖을 수 있음 최대 패킷 크기 고정 ( 예 : less than 1500B)

27 패킷 교환망의 구분 패킷 교환망 구분 –Local Area Network(LAN) –Wide Area Network(WAN) Categories are informal and qualitative

28 Local Area Networks Engineered for high speed 컴퓨터간의 직접 연결 일반적으로 커다란 패킷 크기 거리의 제한 오류율이 낮음

29 Wide Area Networks (Long Haul Networks) LAN 보다 상대적으로 느린 속도 특정 용도의 하드웨어 사용 일반적으로 작은 패킷 크기 거리상의 제한이 없음 오류율이 높음

30 패킷 교환망의 예 Wide Area Nets –ARPANET, NSFNET –Common carrier services 전용선 서비스 –Point-to-point 연결 Local Area Nets –Ethernet, Token Ring

31 ARPANET(1968-1989) Internet 의 오리지날 백본 WAN around which TCP/IP was developed Initial funding from Advanced Research Project Agency 1968-1989 까지 존재 Packet Switched Node(PSNs) 교환기들간 의 전용선 연결 56K bps 회선 속도

32 NSFNET(1987-1992) Funded by National Science Foundation 동기 : 모든 과학자와 공학자를 연결 3 개 레벨의 계층 –Wide area backbone spanning U.S. –Many mid-level(regional) networks that attach to backbone –Campus networks at lowest level Became ANSNET and vBNS

33 Common Carrier 가 제공하는 PSS Value-added packet switching services 고객은 회선에 대한 것이 아니라 서비스 에 대해 지불 예 –SMDS –Frame Relay –ISDN –ATM

34 LAN 예 : Ethernet 10 Mbps over coaxial cable or twisted pair 케이블 세그먼트당 500m 길이 제한 노드들은 모든 패킷을 수신하고 자신의 것만을 필터링 IEEE 802.3 Twisted pair 사용 : 10Base-T Fast Ethernet : 100 Mbps

35 패킷 포멧 (Ethernet) DestinationSourceTypeData 50-1500 octet data field 2-octet type field 6-octet source address 6-octet destination address

36 이더넷 프레임 예 02 07 01 00 27 ba 08 00 2b 0d 44 a7 08 00 45 00 00 54 82 68 00 00 f f 01 35 21 80 0a 02 03 80 0a 02 08 08 00 73 0b d4 6d 00 00 04 3b 8c 28 28 20 0d 00 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 $Octets of frame in hexadecimal $Destination : 02.07.01.00.27.ba $Source : 08.00.2b.0d.44.a7 $Frame type : 08.00 (IP)

37 Bridge 두개이상의 LAN 을 연결하고 이들을 하 나의 LAN 으로 보이도록 하는 장비 한 LAN 으로부터 다른 LAN 으로 모든 패 킷을 전송 (repeat) 1 packet-time 지연 Does not forward collisions or noise Does forward all broadcast packets Called “level 2” interconnect Makes multiple LANs appear to be a single, large LAN

38 Point-to-Point “Network” 두 노드간의 직접 연결 일반적으로 serial line 과 모뎀 사용 링크 레벨 프로토콜 –data link (framing) format –error detection/recovery scheme 여러 전송 매체 –twisted pair 혹은 coax –microwave/satellite –dial-up connection –optical fiber

39 Physical Network Address 패킷망에 연결된 각 노드는 하나의 unique physical 주소를 할당 받는다. 송신자는 패킷을 전송할 때 목적지 주소 를 제공해야 한다. 소스 주소도 제공 각자의 주소체계를 정의

40 Physical Addressing Static –Assigned by hardware vendor Configurable –Assigned by customer Dynamic –assigned by software at startup

41 Physical Network Addressing 예 이더넷 –Static 48-bit address : 장치가 제조될 때 배정 –All 1s address reserved for broadcast –One-half of the addresses reserved for multicast; assigned by customer

42 How Adaptive Ethernet Bridge Uses Addresses Bridge begins with no knowledge of which machines connect to which wire; it forwards all packets Bridge watches source address in packets to form list of which machines reside on each side Bridge uses destination address and location list to decide whether to forward packet Bridge always forwards broadcast and multicast packets

43 Bridge Adapting 예 123 456 bridge 호스트 1 : 02C 호스트 4 : F4D 호스트 2 : 1B6 호스트 5 : 871 호스트 3 : 39A 호스트 6 : 5EA

44 ( 그림 설명 ) Address lists when bridge boots Lists after hosts 1 and 3 communicate Lists after hosts 2 and 5 communicate -- 02C 39A - 02C 39A 1B6 871

45 TCP/IP 가 본 Physical Networks The TCP/IP protocols accommodate all types of physical networks. TCP/IP runs across a local area network such as a Token Ring, a wide area network, a point-to-point link between two machines, or a set of bridged LANs

46 인터넷 모델과 인터네트워킹의 기초 목표 : To maximize interoperability of distributed computations across vendors and products 필요요건 –Universal connectivity – 정보교환을 위한 과정과 포멧 협정 – 서비스, 장치 등을 위한 이름과 주소 협정

47 TCP/IP 인터넷 아이디어 표준 네트워크 하드웨어 사용 physical network 들의 연결 network hardware, physical addresses, 라우 팅의 상세사항을 숨기는 추상화 (abstractions) 고안

48 TCP/IP 인터넷의 개념도 User’s view Actual connections

49 Architectural Model Hosts connect to physical networks Dedicated computers called IP gateways or IP routers interconnect networks

50 Addressing Model Abstract Internet address(IP address) assigned to every host or router that connects to an Internet Application software on hosts and routers uses Internet addresses when sending and delivering packets Software in the operating system maps Internet addresses into physical hardware addresses automatically

51 호스트의 패킷 전송 Host forms a packet to be sent including the destination Internet address If host can reach the destination directly, it sends the packet over the physical network to its destination If host can not reach the destination directly, it sends the packet to the nearest router

52 라우터의 패킷 핸들링 If router can reach the destination directly, it sends the packet over the physical network to its destination If router can not reach the destination directly, it chooses another router that it can reach directly and sends the packet to that router

53 라우팅 소개 Net 1 Net 2 Net 3 R1R2 라우팅 테이블

54 인터넷 주소 방식의 특성 Compact Universal Works with any network hardware Supports efficient decision making –Test whether a destination can be reached directly –Decide which router to use for indirect delivery –Choose next router along a path to the destination

55 TCP/IP 인터넷 주소 방식 32bit, hardware independent address Prefix of the address uniquely identifies the network to which the host attaches(all machines on the same net share the same prefix) Prefixes assigned by central authority(IANA) Suffix of the address gives a unique id for the network Suffixes assigned by local network administrator

56 인터넷 주소의 Prefix 와 Suffix 분리 How should division be made? –Large prefix, small suffix means many possible networks, but each is limited in size –Large suffix, small prefix means each network can be large, but there can only be a few networks Internet address scheme designed to accommodate both possibilities

57 The Classes of IP Addresses 0 101 001 0111 01111 netidhostid netidhostid netidhostid IP multicast reserved Class A Class E

58 Why Partition Internet Address Into Network and Host Portions? Each address must be unique Want to make routing efficient Partition allows us to assign unique id to each network, so we can do routing using network portion and delivery using unique host portion

59 Dotted Decimal Notation Syntactic form for expressing 32-bit address Used throughout the Internet and associated literature Represents each byte in decimal separated by periods (dots) 예 : 32-bit number in binary –10000000 00001010 00000010 00000011 –dotted decimal notation 128.10.2.3

60 Network Prefixes and Dotted Decimal Form Prefix is an exact multiple of octets –1 octet for Class A –2 octets for Class B –3 octets for Class C Dotted decimal makes reading easy

61 IP Address Conventions When used to refer to a network –Host field contains all 0 bits Broadcast on the local wire –Network and host fields both contain all 1 bits Directed broadcast : broadcast on specific (possibly remote) network –Host field contains all 1 bits –Nonstandard for: host field contains all 0 bits

62 Illustration of IP Addressing Rest of the Internet R1 H1 R3 R2 Hosts and routers using other addresses Site with three networks Example host 128.10.0.0 192.5.48.0 128.211.0.0 128.211.0.9 Router to site

63 Subnet Addressing Not part of original TCP/IP address scheme Allows a site to use a single network address for multiple physical networks Subdivides the hostid portion of an address into a pair of fields for physical network and host Interpreted only by routers and hosts at the site; treated like normal address elsewhere Like the IP address scheme in miniature

64 Subnet Addressing 예 Class B 인터넷 주소 포멧 The form of one possible subnet interpretation netidhostid 01631 02416 netid physical net host 31

65

66 Subnet Address Details Each physical network is assigned subnet mask Mask covers netid portion plus zero or more bits of hostid portion When mask is applied to a destination address, it gives the address of a subnet Site may choose a different mask for each of its networks (not advisable) Site may assign all 1’s or all 0’s subnet (not advisable)

67 Fixed-length IP Subnet Addressing Advantages –Uniformity –Ease of debugging/maintenance Disadvantages –Number of nets fixed for entire organization –Size of physical net fixed for entire organization

68 Using Fixed-Size Subnets with a Class B Address Bits in mask # subnets #hosts/subnet 16 1 65534 24 254 254 30 16382 2 Notes –24-bits mask uses third octet for subnetting(typical) –All 0s and all 1s values omitted

69 Variable-Length Subnetting Advantages –Increased flexibility –Mixture of small and large nets –More complete use of address space Disadvantages –Difficult administration –Potential for problems Address ambiguity Topology restrictions Excessive routes

70 Classless Inter-Domain Routing (CIDR) Problem –Exponential Internet growth –Limited IP addresses (esp. Class B) –Will exhaust address space in a few years Solution to problem –Assign organization multiple Class C address instead of a single Class B –Temporary fix until Ipng –Backward compatible

71 CIDR 계속 New Problem –Excessive entries in route tables –Large volume of data during routing update Solution –Classless Inter-Domain Routing Use network address and count Abbreviation for “this network and the next n”

72 Binding IP Addresses to Physical H/W Addresses Must use physical addresses to send and receive packets Therefore, must map IP addresses to physical addresses Method depends on underlying H/W technology S/W to perform mapping built into network interface S/W in the O/S

73 Static Address Binding Useful when H/W addresses chosen from small, dense set Key ideas : –Local site administrator is free to choose host portion of an IP address –Choose IP address that encodes H/W address in its host portion –Mapping becomes trivial

74 Dynamic Address Binding Useful when hardware addresses are large and fixed Requires hardware broadcast Best for local area network Key ideas: –Maintain a table of pairs (Ia, Ha) where Ia is Internet address and Ha is H/W address for machine A –Use the network to obtain new bindings

75 Internet Address Resolution Protocol (ARP) Internet standard for dynamic address binding Allows machine A to find machine B;s physical address knowing only B’s Internet address Uses hardware broadcast ARP only used to map addresses within a single physical network, never across multiple networks

76 ARP 계속 Machine A broadcasts ARP request with B’s IP address All machines on local net receive broadcast Machine B replies with its physical address Machine A adds B’s address information to its table Machine A delivers packet directly to B

77 ARP request and reply messages A broadcasts request for B (across local net only) B replies to request AXBY YBXA

78 ARP Packet Format when used with Ethernet Hardware-type Protocol-type HLENPLENOperation Sender HA (octets 0-3) Sender HA (octets 4-5)Sender IA (octets 0-1) Sender IA (octets 2-3)Target HA (octets 0-1) Target HA (octets 2-5) Target IA (octets 0-3) 0 8 16 31

79 Algorithm for Processing ARP Requests Extract sender’s pair, (Ia, Ha) and update local ARP table If this is a request and the target is “me” –Fill in target h/w address –Exchange sender and target entries –Set operation to reply –Send reply back to requester

80 ARP details ARP table is merely a cache Entries should time out and be invalidated Machine can broadcast new binding when it boots

81 Comments on Address Binding Conceptual purpose –Isolates h/w addresses at low level –Allows application programs to work with Internet addresses only Consequences –Occurs at lowest level of system –Should not be used for routing –Provides uniform, virtual network interface

82 Internet Protocol (IP) Provides a connectionless packet delivery service Defines the format of packets for the (virtual) Internet Specifies routing

83 IP Datagram Basic unit of Internet transfer Analogous to physical network packet Composed of –Header that contains source and destination Internet addresses, datagram type field, etc. –Data area that contains data being carried

84 IP Datagram Format VERSLEN Type of service Total length IdentFragment offset TimeProto Header Checksum Source IP Address Destination IP Address OptionsPadding Data ….. 0 4 8 16 1924 31 Flags

85 Encapsulation IP datagram travels in physical network packet or frame Complete datagram is treated as data by the hardware TCP/IP defines standards for encapsulation on most network hardware

86 Datagram Encapsulated in Physical Network Frame Complete IP datagram is treated as data in physical network frame Encapsulation occurs in network interface s/w as the last step before the datagram is transmitted IP HeaderIP DATA Frame DATAFrame Header

87 Example Datagram Encapsulated in an Ethernet Frame 02 07 01 00 27 ba 08 00 2b 0d 44 a7 08 00 45 00 00 54 82 68 00 00 f f 01 35 21 80 0a 02 03 80 0a 02 08 08 00 73 0b d4 6d 00 00 04 3b 8c 28 28 20 0d 00 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 IP header follows Ethernet from header and contains twenty octets IP source : 128.10.2.3 (800a0203) IP destination : 128.10.2.8 (800a0208) IP type : 01 (ICMP)

88 Routing in an Internet Host delivers datagrams to directly connected machines Host sends datagrams that can not be delivered directly to router Routers forward datagrams to other routers Final router delivers datagram directly

89 Efficient Routing Routing decisions based on table lookup Routing tables keep only network portion of addresses (size proportional to number of networks, not number of hosts) Algorithm is efficient and “easy” to understand Easy to automate routing table update

90 EX Routing Table Found in an IP Router to reach net route to this addr 20.0.0.0 deliver direct 30.0.0.0 deliver direct 10.0.0.0 20.0.0.5 40.0.0.0 30.0.0.7 Net 10.0.0 20.0.0.0 30.0.0.0 40.0.0.0 S Q R 20.0.0.5 10.0.0.520.0.0.6 30.0.0.7 30.0.0.5 40.0.0.7

91 Network MTU Each network h/w technology imposes a fixed limit on the maximum size of a packet Size limit called Maximum Transmission Unit (MTU) Encapsulated datagram must be less than network MTU

92 Possible Ways to Accommodate Networks with differing MTUs Force datagram to be less than smallest possible MTU –Inefficient –Cannot know minimum MTU Choose initial datagram size that seems appropriate and handle problems later IP uses the latter

93 Datagram Fragmentation Needed when datagram larger than network MTU over which it must travel Performed by routers Divides datagram into several, smaller datagrams called fragments Each fragment routed as independent datagram Final destination reassembles fragments

94 Illustration of Fragmentation Hosts A and B send datagrams of up to 1500 octets Router R1 fragments large datagrams from Host A before sending over Net 2 Router R2 fragments large datagrams from Host B before sending over Net 2 Host A Host B R1R2 Net 2 MTU=440 Net 1 MTU=1500 Net 3 MTU=1500

95 Datagram Fragmentation Details Each fragment is a datagram Router replicates initial datagram header for all fragments Offset field in header gives offset in original datagram for data in this fragment Fragment bit in header indicates this is a fragment Additional bit set in header to indicate last fragment

96 Example of Fragmentation Original datagram header Data1 400bytes Data2 400bytes Data3 400bytes header1 Data1 header3 Data3 header2 Data2 Fragment #1 (offset of 0) Fragment #2 (offset of 400) Fragment #3(offset of 800)

97 계속 Offset specifies where data belongs in original datagram Offset actually stored as multiples of 8 octets Last fragment bit turned on in header of fragment #3

98 Best Effort Delivery IP uses best-effort delivery –IP makes an attempt to deliver –IP does not guarantee delivery In an internet, routers become overrun or change routes, meaning that: –Datagrams can be lost –Datagrams can be duplicated –Datagrams can arrive out of or or scrambled Motivation : allow IP to operate over the widest possible variety of physical networks

99 In Practice IP works extremely well Errors are the exception, not the rule IP is designed to tolerate errors in the underlying hardware; it does not introduce them

100 Error Detection and Reporting Mechanisms IP header checksum to detect transmission errors Error reporting mechanism to distinguish between lost datagrams and incorrect addresses Higher level protocols(e.g. TCP) must handle all other problems

101 Error Reporting Mechanism Integral part of IP Internet Control Message Protocol(ICMP) Used mostly by routers to report delivery or routing problems to original source Uses IP to carry control messages No error messages about error messages

102 Example ICMP Message Format (Destination Unreachable) Type CodeChecksum UNUSED (Must be Zero) Internet header + 64 bits of data

103 Example ICMP Error Messages Destination Unreachable Source Quench Redirect (change route) Time Exceeded Echo Request Echo Reply Address Mast Request Address Mask Reply

104 ICMP Message Encapsulation ICMP message has header and data areas Complete ICMP message is treated as data in IP datagram Complete IP datagram is treated as data in physical network frame ICMP message IP dataIP header Frame dataFrame header

105 Ex of ICMP Encapsulation in an Ethernet Frame 02 07 01 00 27 ba 08 00 2b 0d 44 a7 08 00 45 00 00 54 82 68 00 00 f f 01 35 21 80 0a 02 03 80 0a 02 08 08 00 73 0b d4 6d 00 00 04 3b 8c 28 28 20 0d 00 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 ICMP header follows IP header, and contains eighty bytes ICMP type field specifies echo request message(08) ICMP sequence number is zero

106 Protocol, Layering, and Network-Level Services Problems –Communication is difficult –Many details to handle addressing, routing, flow control error detection and correction out-of-order delivery, duplicated packets multiple application programs multiple protocols

107 The Solution Divide the problem into pieces Solve subproblems separately Combine into integrated whole

108 Protocol Layering Conceptual separation of functionality Each layer solves one part of the communication problem Intended primarily for designers Set of layers is called a protocol stack End users may be aware of layering (not desirable)

109 Examples of Layering ISO 7-layer reference model –Application, Presentation, Session –Transport, Network –Data Link, Physical Internet reference model –Application –Transport, Internet –Network interface, Physical

110 The Layering Principle Software implementing layer n at the destination receives exactly the message sent by software implementing layer n at the source

111 How Data Passes through Protocol Layers Application Transport Internet Network Interface Network Interface Application Internet Transport Physical net Identical message Identical Packet Identical Datagram Identical frame Host A Host B

112 Layering In an Internet Application Transport Internet Network Interface Network Interface Application Internet Transport Physical net1 Identical message Identical Packet Identical Datagram Identical frame Identical Datagram Physical net2 Network Interface Internet Identical frame

113 Ex of two protocols at network interface layer: SLIP and PPP Used to send IP across serial lines or dialup –Serial Line IP –Point to Point Protocol Each defines standards for –Framing (encapsulation) –Addressing Incompatible

114 Demultiplexing Among Software Modules at each layer IP moduleARP moduleRARP module Demultiplexing Based on Frame type Frame arrives

115 계속 ICMP moduleUDP moduleTCP module IP Module Datagram arrives

116 계속 Application 1Application 2Application n TCP Module Segment arrives TCP is part of OS Transfer to application program must cross OS boundary

117 Interface Between Internet Protocol S/W in the OS and Application programs Operating system specific Defines exactly how application programs interact with protocol s/w Called the socket interface in many systems(BSD UNIX) System may have library of procedures that simulate socket interface AT&T System V includes an alternative called the Transport Layer Interface(TLI)

118 User Datagram Protocol(UDP) Provides application programs with ability to send and receive datagrams Provides for multiple, concurrent application programs on a single machine Includes (optional) checksum for data transferred Offers unreliable, connectionless transport

119 UDP Details Defines format of messages application programs send Each message includes small integer protocol port numbers to distinguish among multiple application programs Messages are encapsulated in IP datagrams for delivery

120 UDP Message Format Source PortDestination Port LengthUDP checksum Data…... 0 1631

121 Demultiplexing Based on protocol port number Port 1Port 2Port 3 UDP: Demultiplexing IP Module UDP datagram arrives

122 Transmission Control Protocol Major transport service in the TCP/IP suite Reliable transfer Stream paradigm Full duplex connections Flow control Uses IP for datagram transmission

123 TCP Details Allows sender to generate a stream of bytes in convenient chunks Divides stream into small segments for transmission Sends each segment in IP datagram Receiving TCP returns acknowledgement upon successful receipt of data Sender starts timer after segment sent, and retransmits unless positive acknowledgement arrives

124 TCP Retransmission Designed for internet environment –Delays on one connection vary over time –Delays vary widely between connections Fixed value for timeout will fail –Waiting too long introduces unnecessary delay –Not waiting long enough wastes network bandwidth with unnecessary retransmission Retransmission strategy must be adaptive

125 Adaptive Retransmission TCP keeps estimate of round trip time on each connection Round trip estimate derived from observed delay between sending segment and receiving acknowledgement Timeout for retransmission based on current round trip estimate Heuristics can sometimes fail(e.g., round trip delay changes quickly)

126 TCP Details Segment contains checksum for data being sent Receiver acknowledges highest byte received, not each specific segment Protocol port numbers used to distinguish among multiple application programs Receiver controls flow by telling sender size of currently available buffer Called window advertisement Each segment contains advertisement, including data segments

127 계속 Receiver can send additional acknowledgements whenever buffer space becomes available Sender backs off when congestion occurs Data flow may be shut down in one direction Connections started reliably, and terminated gracefully Connection established (and terminated) with a 3-way handshake

128 3-Way handshake for Connection Startup Event at site 1 Network message Event at sit 2 Send SYN seq=x Receive SYN segment Send SYN seq=y, ACK x+1 Receives SYN+ACK segment Send ACK y+1 Receive ACK segment

129 TCP Segment Format Offset specifies header size (offset of data) in 32- bit words Code bits specify urgent, ack, push, reset, syn, or fin Source port Destination port Sequence Number Acknowledgement number Off.Res.CodeWindow ChecksumUrgent Pointer Options Data…... Padding 0 816 31

130 TCP Acknowledgement EX Sending Application IUYTRQWE Net Interface IP TCP Receiving Application IURQWE Net Interface IP TCP Internet * Assume octets 5 & 6 lost * Sender transmits octets 7 & 8 * Receiver acknowledgers octets 1-4

131 EX Packet Trace for TCP Connection Machines A, B, G boot P1 forms TCP connection to P2, sends one octet of data, and closes connection G P1 P2 Monitor point IP addr=Ig Ether addr=Eg IP addr=Ig2 Ether addr=Eg2 IP addr=Ia Ether addr=Ea TCP port 99 IP addr=Ib Ether addr=Eb TCP port 25 A B

132 계속 Hardware frame Address Resolution Message Src Dst Typ Op Snd IP Snd E Tar IP Tar E 1 Ea. ARP REQ Ia Ea Ig ? 2 Eg Ea ARP RSP Ig Eg Ia Ea Hardware frame IP datagram TCP segment Src Dst Typ Src Dst Typ Src Dst Typ 3 Ea Eg IP Ia Ib TCP 99 25 SYN 4 Eg Ea IP Ib Ia TCP 25 99 SYN+ACK 5 Ea Eg IP Ia Ib TCP 99 25 ACK 6 Ea Eg IP Ia Ib TCP 99 25 DAT 7 Eg Ea IP Ib Ia TCP 25 99 ACK 8 Ea Eg IP Ia Ib TCP 99 25 FIN+ACK 9 Eg Ea IP Ib Ia TCP 25 99 ACK 10 Eg Ea IP Ib Ia TCP 25 99 FIN+ACK 11 Ea Eg IP Ia Ib TCP 99 25 ACK

133 Conceptual Layering Reliable Steam (TCP) User Datagram (UDP) Internet (IP) Network Interface

134 Assignment of Protocol Ports Need globally fixed ports for globally known services Need dynamically allocated ports for other services Accommodate with two port types –Statically assigned ports –Dynamically assigned ports Note: servers use statically assigned ports; clients use dynamically assigned ports

135 Statically Assigned Ports Called “well-known” Used for services like e-mail Fixed by IANA Use “small” values In UNIX, values less than 1000 reserved for privileged programs

136 Dynamically Assigned Ports Available for user applications Operating system chooses when application begins Programmer responsible for devising mechanism to inform other programs Use “large” values

137 Program Interface to Port Assignment Port numbers should not be encoded in programs as literal constants Most systems provide Database of service names Library routines that use the database to map names into protocol port numbers (e.g., getservbyname) Site can add local definitions to the database

138 Ex Database for Service Mapping (/etc/services in UNIX) echo 7/tcp echo 7/udp ftp 21/tcp telnet 23/tcp smtp 25/tcp time 37/tcp nameserver 53/tcp nameserver 53/udp foobar 2001/udp

139 Internet Architecture and Protocols for propagating routing information Internet Routing –IP implements datagram routing –Both hosts and routers have an IP module and both route datagrams –IP routing is table-driven

140 How/When are IP routing table built? Depends on size/complexity of internet Static routing –Fixes routes at boot time –Useful only for simplest cases Automatic routing –Table initialized at boot time –Values inserted/updated by protocols that propagate route information –Necessary in large internets

141 Host Routing EX #1 Architecture: hosts on an isolated Ethernet Static routing Host routing table Destination Route 128.10.0.0 direct 128.10.0.0

142 Host Routing Ex #2 Architecture: hosts on an Ethernet with one router Static routing host routing table Destination Route 128.10.0.0 direct default 128.10.0.200 128.10.0.0 To Internet 128.10.0.200

143 Host Routing Ex #3 128.10.0.0 r1r2 128.10.0.200 128.10.0.209 $ Architecture: host on an Ethernet with two routers $ Static routing + ICMP redirects $ Initial host routing table destination 128.10.0.0 default128.10.0.200 direct route

144 계속 Host generates datagram for 192.5.48.3, which lies beyond r2 Host routes datagram to r1 ICMP redirect from r1 update host’s routing table 128.10.0.0 r1r2 128.10.0.200 128.10.0.209 destination 128.10.0.0 192.5.48.0128.10.0.209 direct route default128.10.0.200

145 Routing Tables In Routers A router must be able to reach all networks At least one router must know all possible destinations explicitly Having all routers (or hosts) know routes for all destinations does not scale

146 Solution #1 Make a small set of “core” routers have complete information Allow other routers to know only local destinations and use the core as central router Works only for medium size internets

147 Solution #2 Have core routers know routes to all locations Devise a mechanism that allows other routers to contact the core to learn routes (spread necessary routing information automatically)

148 Historical View Of Core Routers and Backbone Network TCP/IP was initially developed for an architecture that included –A backbone network –Core routers attaching sites Backbone network r1rnr2 Lan 1Lan 2Lan n Core routers

149 Ex Route Propagation Protocol(GGP) Gateway to gateway protocol Used only by original Internet core routers Allows routers to exchange routing information Distance vector algorithm

150 Vector Distance Algorithm One router sends its routing table to another Table contains pairs of destination network and distance Receiver replaces entries in its table by routes to the sender if routing through the sender is less expensive than the current route

151 Alternative Routing Algorithms Used by later generations of Internet core routers Invented to avoid instabilities and other problems of distance vector algorithms Link-state algorithm

152 Link-State Algorithm Participating routers know topology Think of routers as nodes in a graph, and networks connecting them as edges or links All routers propagate status of directly connected links periodically All routers recompute routes from their copy of link information Also called Shortest Path First(SPF)

153 Noncore Router Any router that is not part of the core system Does not participate directly in core’s routing information propagation algorithm Will not choose optimal routes if it uses the core except for local delivery

154 Extra Hop Problem Noncore router picks one core router to use as router(e.g., r2) Noncore router routes all packets to r2 across backbone Router r2 routes some packets back across backbone to r1 Lan 1 backbone Lan 2 r3 r1 r2 Core router Noncore router

155 Solving The Extra Hop Problem Not all routers can participate in a sing routing exchange algorithm (does not scale) Even nonparticipating routers should make routing decisions Need mechanism that allows nonparticipating routers to obtain routes automatically

156 Network Advertisement Routers that engage in active route propagation may not directly attach to all networks Need mechanism that allows them to learn about destinations to which they do not attach

157 Autonomous System Group of networks under one administrative authority Free to choose internal routing update mechanism Can not use Internet core as central router

158 Exterior Gateway Protocol (EGP) Standard Internet Protocol Solves two problems –Allows noncore router to advertise networks hidden in its autonomous system –Allows noncore routes to learn routes from the core Designed for communication with the Internet core system Now used primarily between pairs of AS

159 Illustration of EGP r1r2 Common network EGP used

160 EGP Details Router in one autonomous system becomes the peer (neighbor) of a router in another AS The two peers periodically poll each other Protocol keeps test of whether neighbor is alive separate from reachability update

161 계속 Polling rates may be asymmetric EGP supports messages for –Neighbor acquisition –Liveness test –Poll for update –Route update

162 The Truth about EGP EGP is still used in many parts of the Internet EGP does not interpret network distances EGP is used only to establish a path to a given network EGP provides reachability information, not routing information

163 Limitations of EGP Entire routing update must fit into one datagram No universal agreement on interpretation of distances Does not allow multiple paths to a destination

164 Border Gateway Protocol (BGP) Newer alternative to EGP for exterior route propagation Originally used inside NSFNET Separate policies for –Internal routing –Transit routing Current version BGP-4 Supports CIDR

165 BGP Details Provides routing among AS Border routers designated by each AS Uses reliable transport (i.e., TCP) Keepalive messages Propagates path information Can prevent routing loops

166 Use of BGP at NAPs Routing arbiter (route server) –Stores routing information –Provides third-party routes –Accessed via BGP –Does not handle data traffic NSP 1 NSP 2 NAP Routing arbiter Bgp used

167 Exchanging Routing Information within an AS Mechanisms called interior gateway protocols, IGPs Choice of IGP is made by AS A router in the AS advertises network reachability to other Ass with exterior protocol

168 Illustration of IGPs r1 r2 IGP1 EGP IGP2

169 Ex IGPs RIP HELLO OSPF Proprietary protocols provided by vendors

170 Routing Information Protocol (RIP) Implemented by UNIX program routed Uses hop count metric distance vector protocol Relies on broadcast Assumes low-delay local area network Uses split horizon and poison reverse techniques to solve inconsistencies RIP does not include subnet mask

171 Slow Convergence Problem (Count To Infinity) Net N R1R2R3 Routers with routes to net N Net N R1R2R3 R1 erroneously routes to R2 after failure

172 RIP Update Format Uses family field to support multiple protocols Message travels in UDP datagram commandversionreserved Family of net 1Net 1 addr. Octets 1-2 Net 1 address, octets 3-6 Net 1 address, octets 7-10 Net 1 address, octets 11-14 Distance of network 1 Family of net 1Net 2 addr., octets 1-2 Net 2 address, octets 3-6 Net 2 address, octets 7-10 Net 2 address, octets 11-14 Distance of network 2 …...

173 HELLO Protocol Mostly of historical interest Developed by Dave Mills Used by NSFNET fuzzballs Uses metric based on delay

174 How HELLO works Participants keep track of delay between pairs of routers HELLO propagates delay information across net Route chosen to minimized total delay

175 OSPF (Open SPF) Relatively new protocol Developed by IETF working group Uses SPF (link-state) algorithm More powerful than most predecessors More complex to install and manage

176 Why Distance Interpretation Is Difficult Each autonomous system free to choose an IGP for its internal use No universal agreement on distance metric among IGPs Given AS can receive updates from other systems via EGP Impossible to have meaningful comparison

177 Metric Interpretation with EGP Allows IGPs to use small numbers (e.g, less than 128) Maps small distances to higher numbers when crossing AS boundary (e.g, 128 to 192) Forces datagrams to remain inside AS if possible

178 Gated Program Originally for BSD UNIX Supports multiple IGPs (e.g, RIP and HELLO) as well as EGP Uses configuration file to decide which networks to advertise with EGP Maps distances to higher values when crossing EGP boundary

179 국내 인터넷 구성 한국 인터넷 교환 노드 (KIX) – 인터넷 교환 노드 한국통신, 데이콤, 아이넷 기술 – 비영리기관 : 3 개기관 연구망, 교육망, 초고속 국가망인터넷, 정보공공기관 인터넷 (KOSINET) –94 개 정보공공기관 가입

180 초고속 국가망 인터넷 – 국외망연동 : 한국전산원 미국 : 10M(Global one) 일본 : 2M(Imnet) 유럽 : 2M(Btnet) – 국내가입자망연동 : 한국통신 – 전국백본망 구축 : 5 개지역 서울, 대전, 부산, 대구, 광주

181 망구성도 ‘98.1 backbone KIX Pubnet Global Gateway KT IX Dacom IX KOSINET KREN KREONET PUBNET I-NET IX US 일본 UK

182 주요추진내용 NMS 시스템 구축 –24 시간 monitoring KIX 연동회선 고속화 –IX-Seoul 45M 회선연동 Router Server 구축운영 KIX 운영정책적용

183 향후 추진 계획 High Speed Backbone 국외회선 증속 ATM 연동 서비스 고도화 지역 인터넷 교환노드 구축 / 운영


Download ppt "Internet 개요 Internetworking : an overview of concepts, terminology, and technology underlying the TCP/IP Internet protocol suite and the architecture of."

Similar presentations


Ads by Google