1 / 53

인터넷 , TCP/IP, 라우팅 (Classical Internet)

인터넷 , TCP/IP, 라우팅 (Classical Internet). 1999 년 7 월 6 일 고려대학교 전자 및 정보공학부 강 현 국. 2. 차 례. 1. 소개 2. 프로토콜 계층화 3. LAN 4. Ethernet 5. 인터넷 구조 6. 인터넷 주소 7. 점 십진 표기 8. ARP 9. 인터넷 프로토콜 10. ICMP. 11. UDP 12. TCP 13. Routing 14. Client-Server Model 15. DNS 16. Telnet

joanne
Download Presentation

인터넷 , TCP/IP, 라우팅 (Classical Internet)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 인터넷, TCP/IP, 라우팅(Classical Internet) 1999년 7월 6일 고려대학교 전자 및 정보공학부 강 현 국

  2. 2 차 례 • 1. 소개 • 2. 프로토콜 계층화 • 3. LAN • 4. Ethernet • 5. 인터넷 구조 • 6. 인터넷 주소 • 7. 점 십진 표기 • 8. ARP • 9. 인터넷 프로토콜 • 10. ICMP • 11. UDP • 12. TCP • 13. Routing • 14. Client-Server Model • 15. DNS • 16. Telnet • 17. FTP (File Transfer Protocol) • 18. SMTP와 MIME • 19. TCP/IP 프로토콜 ‘99하계단기계속교육강좌: 광대역정보통신

  3. 소 개 • 통신 기술 • 프로토콜 • 하드웨어와 드라이버 • 응용 • OS

  4. 통신 이란? • “보내는 자가 받는 자에게 정보를 정확하게(효율적으로) 전달하는 것” • “정확하게” • 송수신자간의 준비 • 통신 모드 설정 • 통신 환경에 적합 • 정보 전달 속도 • 통신/정보의 시작과 끝을 통지 • 정보의 무결성 • 정보의 전달량을 제어 • 정보의 전달 경로를 제어

  5. 통신 이란? (계속) • “효율적으로” • 작은 밴드폭 • no dc • cloking • 오류 검출 • 잡음 • 경제성

  6. 프로토콜 계층화 • 프로토콜 소프트웨어의 개념적 구성

  7. OS와의 도식적 관계

  8. 인터넷 계층

  9. OS 와의 관계

  10. LAN • Ethernet • Token-Ring • Token-Bus • FDDI • ATM-LAN • IPOA • LE • MPOA • MPLS

  11. Ethernet • CSMA/CD (Carrier Sense Multiple Access/ Collision Detection) • Ethernet Cable • Transceiver • Transceiver cable • Terminator • Hub • Tab • Ethernet Adapter • Bridge • Router

  12. Ethernet 기술

  13. 인터넷 구조 • TCP/IP 인터넷에서 라우터나 게이트웨이 라고 불리는 컴퓨터들은 물리적인 망들 사이에서 상호 연결을 제공한다. • 라우터들은 하나의 패킷에 대해 경로를 설정할 때 목적지 호스트가 아니라 목적지 망을 사용한다. • TCP/IP 인터넷 프로토콜은 모든 망들을 동등하게 처리한다. 이더넷같은 LAN, ANSNET과 같은 WAN, 각 기계들 사이의 점대점 링크등 각각을 하나의 망으로 생각한다.

  14. 인터넷 주소 구조 • 3단계 : 물리주소 + IP 주소(망 주소 + 호스트 주소) + Port 주소

  15. IP 주소 • TCP/IP 인터넷상의 각 호스트는 유일한 32비트 인터넷 주소를 할당 받고, 이 주소는 모든 통신에서 사용된다. • 만약 호스트 컴퓨터가 한 망에서 다른 망으로 옮기면, 호스트의 IP 주소도 변경해야 한다.

  16. 점 십진 표기

  17. ARP (Address Resolution Protocol) • 주소 해결 프로토콜 ARP는 한 호스트가 대상 호스트의 IP 주소만으로 같은 물리적 망 상에 있는 대상 호스트의 물리 주소를 찾을 수 있도록 해 준다. • ARP는 모든 기계에 임의의 IP 주소를 할당할 수 있게 하여 내재되어 있는 망 물리 주소를 숨겨주는 하위 프로토콜이므로 물리망 시스템의 한 부분이지 인터넷 프로토콜의 한 부분이 아니다.

  18. 인터넷 프로토콜(IP) • 인터넷은 계층적으로 배열된 세 개의 개념적 서비스 중심으로 설계되었다. 인터넷의 구조가 놀라울 정도로 잘 짜여져 있고, 개조가 용이하기 때문에 성공할 수 있었다. • 응용 서비스 • (신뢰성 있는) 트랜스포트 서비스 • 비연결 패킷 전달 서비스

  19. IP 패킷

  20. Fragmentation/ Reassembly

  21. Routing (경로배정) • 정보를 숨기고, 경로설정 테이블을 작게 유지하고, 경로 설정 결정을 효과적이게 하기 위해서, IP 경로설정 소프트웨어는 각 호스트 주소에 대해서가 아닌 목적지 망 주소에 대한 정보만을 유지한다.

  22. 경로배정 소프트웨어

  23. ICMP(Internet Control Message Protocol) • 인터넷 제어 메세지 프로토콜(ICMP)는 라우터가 다른 라우터나 호스트들에게 오류 및 제어 메세지들을 송신하도록 한다. ICMP는 한 기계상의 IP소프트웨어와 다른 기계상의 IP 소프트웨어간의 통신을 제공한다. • 데이타그램에 오류가 발생되었을 때, ICMP는 데이타그램의 원래 근원지에 오류상태를 보고만 한다. 근원지는 개별적 응용 프로그램에 그 오류를 연계시켜 주거나 문제를 수정하기 위한 다른 행동을 취해야 한다

  24. UDP(User Datagram Protocol) • 사용자 데이타그램 프로토콜(UDP)은 기계들간의 메세지들을 전송하기위해 IP를 이용하여 비 신뢰적, 비 연결형 전달 서비스를 제공한다. UDP는 메세지들을 전달하기 위해 IP를 사용하지만, 한 호스트 컴퓨터내에서 여러 목적지들을 구별하기 위한 능력을 추가한다. • UDP 계층이 한 호스트내에 여러 근원지들 또는 목적지들 간의 구별에만 책임을 지는 반면, IP 계층은 인터넷상에서 한 쌍의 호스트간의 데이타 전달에만 책임을 진다.

  25. Pseudo-Header • Checksum은 목적지에 정확히 전달되었는지 검사를 하여야 하나, UDP에는 IP 주소가 없으므로 하위의 IP 주소를 미리 보고 검사합 • Checksum = UDP 헤더(checksum = 0) + 사용자 데이터 + pseudo-header 를 16 비트 단위로 1의 보수를 합하고, 다시 1의 보수 값

  26. TCP(Transmission Control Protocol) • Virtual Circuit 설정 • Reliable Stream Orientation • 추상적으로 말해서, TCP는 프로토콜 포트가 아닌, 한쌍의 종점들에 의해 구별되는 연결을 사용한다. • TCP는 한쌍의 종점으로 연결을 구별하기 때문에, 같은 기계상에서 주어진 TCP포트 번호는 다중 연결들로 나누어 사용될 수 있다.

  27. TCP 연결 • TCP 연결 설정 : 3-way handshake • TCP 연결의 구분 : (src_ip, src_port, dest_ip, dest_port)

  28. Karn’s Algorithm • RTT = (  old_RTT) + (1 - )  new_RTT) • Timeout =   RTT • Karn’s Algorithm = RTT와 timeout 계산을 분리  전송이 정상적이 아닐 때 (timeout 발생 시)  new_timeout =   timeout 로 수정  timeout이 발생하지 않으면, 비로소 RTT 계산 후  timeout 값 계산

  29. Jacobson/Karel’s Algorithm • Diff = Sample RTT - Old_RTT • Smoothed_RTT = Old_RTT +   diff • DEV = Old_Dev + (Diff - Old_DEV) • Timeout = Smoothed_RTT +   DEV •  = 1/(23),  = 1/(22),  = 3 • (4.3 BSD UNIX) = 2 • (4.4 BSD UNIX) = 4

  30. Relationship between TCP send buffer(letf) and receive buffer(right)

  31. Congestion Control (1) • Self-clocking • Assumption : 모든 오류는 congestion에서 주로 발생 • EffectiveWindow = MaxWindow  (LastByteSent  LastByteAcked) where MaxWindow = min(CongestionWindow, AdvertizedWindow) • Multiplication Decrease • Timeout 발생시 마다 CongestionWindow를 반으로 • CongestionWindow = max(CongestionWindow/2, 1) CongestionWindow 1 = MSS Byte • Additive Increase • CongestionWindow 만큼의 성공적인 전송 후 1씩 증가 • 실제로는 각 ACK마다 MSS 부분 증가 Increment = (MSS  MSS) / CongestionWindow CongestionWindow += Increment

  32. Congestion Control (2) • Slow Start • ACK마다 CongestionWindow를 1 씩 증가 • Slow Start는 상대적으로 AdvertizedWindow만큼 단번에 전송하지 않는다는 의미

  33. Congestion Control (3) • CongestionThreshold = 처음 Multiplicative Reuse 발생 시 CongestionWindow의 반

  34. Congestion Control (4) • Packet 손실시, 이전에는 timeout에 의해 재전송 하게 되어 있었으나 Fast Retransmit는 Duplicate ACK를 사용하여 송신자가 손실을 감지하여 timeout전에 재전송 하도록 하게 함 • 일반적으로 Slow Start를 방지

  35. Congestion Control (5) • Fast Recovery • Fast Retransmit는 window 크기가 작은 경우에 slow start를 방지 못함. • Fast Recovery는 패킷 손실 발생시 congestion window를 반으로 줄이고 Additive Increase

  36. Congestion Avoidance • DEC bit : • RED Gateways • Source-Based Congestion Avoidance

  37. TCP-Tahoe : BSD Network Release 1.0 (BNR1) • Congestion Control • Fast Retransmission • TCP-Reno : BSD Network Release 2.0 (BNR2) • Fast Recovery • Header Prediction • Delayed ACK • TCP-Vegas % 4.4 BSD Unix • Large Window • Source-Based Congestion Avoidance

  38. Routing Protocol in Internet • Exterior Routing Protocols • Routing Protocols among AS • BGP-4 • Interior Routing Protocols • Routing Protocols with AS • Routing Information Protocol (RIP) • Open Shortest Path First(OSPF)

  39. BGP-4 • RFC 1771, 1995 March • AS 간의 정보 • RIP, OSPF, CIRP 지원 • TCP (port 179) 상에서 동작.

  40. Distance - Vector Algorithm • Bellman -Ford Algorithm • “ A node tells its neighbors the distance from it to every other node in the network ” • Routing Information Protocol (RIP)

  41. Least-state Algorithm • Dijkstra’s Algorithm • “ A node tells every other node in the network its distance to it neighbor ” • Open Shortest Path First (OSPF)

  42. RIP • UDP (port 520) • Request / Response (30 sec) • simple • Inadequate to large networks • Not best path : hop only • long convergence time • routing loop

  43. OSPF • In IP directly • RFC 1131 • Type of service routing • load balancing • authenticated routing • heavy load

  44. 알고리즘 비교

  45. Client-Server Model • 서버는 상호 동작이 시작되기 전에 실행하기 시작하여, (일반적으로) 끊임없이 요청을 수락하고 응답을 보낸다. 클라이언트는 요청을 만들고 응답을 기다리는 임의의 프로그램이며, (일반적으로) 유한한 횟수동안 서버를 사용한 뒤에 종료한다. • 서버는 자신이 제공하는 서비스를 위해서 예약된 well-known 포트에서 요청을 기다린다. 클라이언트는 임의의 사용되지 않는, 예약되지 않는 포트를 자신의 통신 목적으로 할당한다.

  46. DNS(Domain Name System) • DNS 서버 • 이름을 IP주소로 변환 • 도메인 이름의 해결 • 1. DNS서버가 질의를 받았을때 • 2. IP주소를 찾으면 보내준다. • 3. 못 찾으면 상위 서버에 문의

  47. Telnet

  48. FTP(File Transfer Protocol)

  49. SMTP와 MIME

More Related