1 / 44

Module 1 – Network Topics

Module 1 – Network Topics. Objectives. 네트워크 architecture 를 이해한다 . 프로토콜의 계층에 대해 알아본다 . OSI 7 계층 모델에 관해 알아본다 . TCP/IP 와 주요 통신 프로토콜에 대해 이해한다 . IPv6 의 주소체계 및 protocol stack 에 대해 이해한다 . 분산 어플리케이션상에서의 클라이언트 / 서버 모델 구조에 대해 이해한다 . 네트워크 프로그래밍의 요구사항에 대하여 알아본다. High. -. speed. Proprietary.

presley
Download Presentation

Module 1 – Network Topics

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. Module 1 – Network Topics

  2. Objectives • 네트워크 architecture를 이해한다. • 프로토콜의 계층에 대해 알아본다. • OSI 7계층 모델에 관해 알아본다. • TCP/IP와 주요 통신 프로토콜에 대해 이해한다. • IPv6의 주소체계 및 protocol stack에 대해 이해한다. • 분산 어플리케이션상에서의 클라이언트/서버 모델 구조에 대해 이해한다. • 네트워크 프로그래밍의 요구사항에 대하여 알아본다.

  3. High - speed Proprietary Network Ethernet or Token, … FDDI, Network Architecture

  4. 규모에 따른 분류 • LAN(Local Area Network) • 빌딩, 연구소, 학교와 같은 규모(반경 수 Km)내의 근접한 컴퓨팅 장비들을 연결한 망 • LAN을 위한 기술로 Ethernet(10 Mbps), Token-Ring(16 Mbps), FDDI(100 Mbps) • WAN(Wide Area Network) • 도시와 도시, 국가와 국가를 연결하는 규모 • 데이터 속도 • 수 Kbps ~ 수 Mbps

  5. IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 IBM PS/2 bus구조 star 구조 ring 구조 Topology에 따른 분류

  6. Data Data Layer 3 Layer 3 Data Data Layer 2 Layer 2 Data Data Layer 1 Layer 1 Data Data 계층화 된 프로토콜 구조 Connection Medium

  7. Application Applications services 7 Presentation Data representation and encoding 6 Session Session Management 5 Transport End-to-end communication 4 Network Machine-machine communication and routing 3 Data Link Access to communications medium, framing 2 Physical Physical characteristics of communications medium 1 OSI 참조 모델 The OSI 7 Layer Model • Layer Structure

  8. request response Server Client The Client-Server Model • 서버는 클라이언트의 요구를 처리하는 프로세스 • 클라이언트는 서버에 요구를 요청하는 프로세스

  9. Listen and process requests Request 2 Request 1 Listen for requests Request 2 Request 1 Process Request 1 Process Request 2 Iterative and Concurrent Server • Iterative • Concurrent

  10. Internet Ethernet Wide Area Link for example X.25 Gateway Token Ring Gateway TCP/IP Protocol Suite

  11. TCP/IP Protocol Stack Application TELNET, FTP OSI Layer 5 - 7 Transport OSI Layer 4 TCP, UDP Network OSI Layer 3 IP, ICMP, ARP, RARP Data Link OSI Layer 1 - 2 Ethernet, Token Ring, FDDI

  12. 24 bits 7 bits 0 netid hostid Class A 14 bits 16 bits Class B 1 0 netid hostid 21 bits 8 bits Class C 1 1 0 netid hostid 28 bits Class D 1 1 1 0 multicast address Classified IP addressing

  13. 14 bits 6 bits 10 bits Class B 1 0 netid subnetid hostid subnet mask Subnet의 구성 방법 • Subnet mask • IP 주소의 효율적인 사용을 위해 고안 • Host 수가 매우 적은 망의 경우 • 한 개의 Major Class 망 주소를 여러 개의 망 주소로 나누어서 사용

  14. <일반적인 클래스 C> 11111111 11111111 11111111 00000000 255 255 255 0 <subnet으로 2bit 사용> 11111111 11111111 11111111 11000000 255 255 255 192 Subnet의 구성 방법

  15. TCP/IP port number FTP : TCP Port number 21 telnet : TCP Port number 23 sendmail : TCP Port number 25 tftp : UDP Port number 69 ...

  16. TCP/IP port addressing 206.62.226.35 206.62.226.66 198.62.10.2 server client 1 listening socket { *. 21 , * . * } connection fork { 198.69.10.2.1500 , 206.62.226.35.21 } server (child 1) client 2 connected socket { 206.62.226.35.21 , 198.69.10.2.1500 } connection fork { 198.69.10.2.1501 , 206.62.226.35.21 } server (child 2) { 206.62.226.35.21 , 198.69.10.2.1501 } connected socket

  17. Layer Structure User Process User Process Application Layer Transport layer TCP UDP TCP/IP Protocol Suite ICMP IP ARP RARP Internet Layer Network Access Layer Hardware interface(Ethernet, FDDI, SLIP, PPP)

  18. Application Layer Transport Layer Internet Layer Network Access Layer 각 계층별 데이터 구조 TCP UDP stream message segment datagram packet frame

  19. Application Layer Data Transport Layer Data Header Internet Layer Data Header Network Access Layer Data Data Encapsulation • 각각의 layer는 데이터에 제어 정보를 추가 • Header 정보 Header

  20. IP,IPv6, ICMP, IGMP ARP RARP TCP/IP Services Media (H.261, MPEG) SDP H.323 SIP RTSP RSVP, DiffServ RTCP RTP SAP FTP SMTP telnet DNS TFTP BOOTP SNMP TCP UDP Network Access Level

  21. 0 31 version IHL type of service total length identification fragment flags & offset time to live protocol header checksum 32-bit source address 32-bit destination address options + padding IP Protocol Header

  22. TCP와 UDP • TCP • 연결형 방식 • 보장성 서비스 제공 • flow control • error control • congestion control • byte-oriented (stream-oriented) • UDP • 비연결형 방식 • 비보장성 서비스 제공 • datagram-oriented

  23. source port destination port sequence number acknowledgment number HLEN reserved code bits window checksum urgent pointer options padding data TCP Protocol Header 0 31

  24. TCP 서비스 • 연결형 서비스 • 점대점 통신 • 보장형 서비스 • Full duplex 통신 • 스트림 전송 • Graceful 연결 해제

  25. TCP 보장성 서비스 • Segment 단위의 전송 • 타이머 관리 • ACK 전송 • Checksum • 순서 보장 • 중복 패킷 방지 • 흐름 제어(flow control) • 체증 제어(congestion control)

  26. initiator receiver SYN (seq = x) SYN (seq=y, ACK=x+1) SYN (seq=x+1, ACK=y+1) TCP 연결 설정 • 3-way handshake SYN_SENT (connect) (accept) SYN_RCVD ESTABLISHED (connect returns) ESTABLISHED (accept returns)

  27. client server FIN M ACK M+1 FIN N ACK N+1 TCP 연결 해제 (close) FYN_WAIT_1 CLOSE_WAIT (read returns 0) FYN_WAIT_2 (close) LAST_ACK TIME_WAIT CLOSED

  28. TCP 전송 방식 • stream-oriented • 데이터는 TCP 연결을 통해서 segment 단위로 전송한다. • 하지만 데이터는 stream of bytes로서 취급된다. • 따라서 모든 bytes는 번호가 붙여진다.(modulo 2**32) • sequence number 사용 • 모든 세그먼트는 sequence number를 갖는다. • 이 번호는 데이터에서 해당 세그먼트가 차지하는 위치의 byte 번호를 의미한다.

  29. TCP 전송 방식 • 버퍼 사용 • 응용 프로그램으로부터 데이터를 받았을 때 송신측 TCP는 그것을 바로 세그먼트로 전송하지 않고 버퍼에 두었다가 일정 크기 이상이 되면 세그먼트로 만들어 전송한다. • 수신측 TCP도 세그먼트가 도착하였을 경우 이것을 바로 응용 프로그램에 전달하지 않고 버퍼에 보관하였다가 일정 크기가 될 때 이것을 응용 프로그램에 전달한다. • 물론 이것은 구현상에서 차이가 있을 수 있다.

  30. UDP Protocol Header 0 31

  31. arp, ping commands • arp – address resolution display and control • ping – send ICMP ECHO_REQUEST packets to network hosts sys% arp -a Net to Media Table Device IP Address Mask Flags Phys Addr ------ -------------------- --------------- ----- --------------- le0 bapark.konkuk.ac.kr 255.255.255.255 00:50:bf:0f:b1:ae le0 ipv62.konkuk.ac.kr 255.255.255.255 00:e0:4c:c0:c3:63 le0 saylove.konkuk.ac.kr 255.255.255.255 00:50:bf:0f:b4:0a sys% ping yahoo.co.kr Pinging yahoo.co.kr [211.32.119.151] with 32 bytes of data: Reply from 211.32.119.151: bytes=32 time=10ms TTL=245 Reply from 211.32.119.151: bytes=32 time<10ms TTL=245 Reply from 211.32.119.151: bytes=32 time<10ms TTL=245 Reply from 211.32.119.151: bytes=32 time<10ms TTL=245 Ping statistics for 211.32.119.151: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 10ms, Average = 2ms

  32. ifconfig, netstat commands • ifconfig – configure network interface parameters • netstat – show network status sys% /sbin/ifconfig -a lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232 inet 127.0.0.1 netmask ff000000 le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500 inet 203.252.134.46 netmask ffffff00 broadcast 203.252.134.255 sys% netstat -in Name Mtu Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis Queue lo0 8232 127.0.0.0 127.0.0.1 5523 0 5523 0 0 0 le0 1500 203.252.134.0 203.252.134.46 5588 7 5152 211 2004 0

  33. traceroute command • traceroute • print the route packets take to network host sys% traceroute korea.support.hp.com traceroute to kr.argo.he.net (216.218.214.197), 30 hops max, 40 byte packets 1 203.252.134.254 (203.252.134.254) 2 ms 1 ms 1 ms 2 203.252.150.2 (203.252.150.2) 2 ms 1 ms 2 ms 3 203.252.166.9 (203.252.166.9) 1 ms 2 ms 1 ms 4 210.123.31.209 (210.123.31.209) 3 ms 3 ms 3 ms 5 168.126.104.1 (168.126.104.1) 2 ms 3 ms 2 ms 6 aphub2-ge3.kornet.net (211.192.47.66) 4 ms 3 ms 3 ms 7 apgate5-ge4.kornet.net (211.216.216.68) 3 ms 4 ms 2 ms 8 pos1-0-la1-kt.kornet.net (211.48.63.250) 147 ms 146 ms 145 ms 9 pos9-1-0.ar2.LAX1.gblx.net (64.210.19.89) 141 ms 142 ms 140 ms 10 206.132.112.153 (206.132.112.153) 507 ms 482 ms 484 ms 11 pos9-0-2488M.cr2.SNV2.gblx.net (208.50.169.82) 476 ms 505 ms * 12 pos5-0-0-155m.br1.snv2.gblx.net (208.50.169.109) 482 ms 495 ms 478 ms 13 fgc-he.he.net (206.132.121.18) 472 ms 467 ms 469 ms 14 gige-g0-0.gsr12008.fmt.he.net (216.218.130.6) 484 ms * 458 ms 15 kr.argo.he.net (216.218.214.197) 457 ms 442 ms 418 ms

  34. Logical Connection Proc 1 Proc 2 Data Transfer Proc 1 Proc 2 Data Packet Connection-oriented and Connectionless protocol • Connection-oriented protocols • Connectionless protocols

  35. Other characteristics of communications services • Sequencing • Is data received in the same order as it was sent? • Error control • How are errors detected (if at all)? • Flow control • Is it possible for a sender to overwhelm a receiver? • Congestion control • Byte stream or message based • Full duplex or half duplex

  36. Introduction • IPv4가 가지는 문제점 • 주소 고갈의 문제 • CIDR • NAT • DHCP • 차세대 인터넷 도입을 위해 보다 장기적, 궁극적인 해결책이 요구 • QoS 지원의 요구 • 그 외 네트워크 서비스가 증가함에 따라 IP상에서의 다양한 지원을 요구 • IPv6의 필요성 • NAT, DHCP등을 사용하여도 근본적 문제는 해결되지 않기 때문에 IPv6의 도입이 필요

  37. IPv6 추가 기능 • 주소체계의 대폭적인 확장 • 멀티미디어 데이터의 실시간 처리 기능 • Security • QoS • Network Management • Improved support for options/extensions

  38. IPv4 vs. IPv6

  39. 0x2001 sTLA NLA1 NLA2 SLA ID Interface ID 16 19 6 7 16 64 bits IPv6 표현 방법 및 계층 구조 • 표현방법 • 주소체계 : 128비트 • 표현방법 : 16진수 형태로 16비트씩 끊어서 8단위의 ":"으로 표시 • 계층구조 • 2001: IPv6 공식주소 프리픽스 값 • sTLA ID : sub Top levle Aggregator Identifier • NLA ID : Next level Aggregator Identifier • SLA ID : Site level Aggregator Identifier • Interface ID

  40. version IHL type of service total length identification fragment flags & offset time to live protocol header checksum 32-bit source address 32-bit destination address options + padding IPv4 Header vs. IPv6 Header • IPv6 header format IPv4 IPv6

  41. IPv6로의 Migration • IPv6 망의 도입 시 발생될 수 있는 문제점 • IPv6는 IPv4와 자연스럽게 호환되지 않음 • 현재 수 천만개의 호스트가 IPv4로만 동작 • 상당기간 동안 IPv4와 IPv6는 상호 공존해야 함 • 어떤 곳은 영원히 IPv6로 업그레이드하지 않을 수도 있음 • IPv4에서 IPv6로 점진적인 업그레이드가 요구됨 • IPv4와 IPv6 사이에서의 호환성 요구

  42. IPv4 / IPv6 Dual Stack

  43. IPv6-in-IPv4 Tunneling • Networks –Tunneling • Gateway – IPv4/IPv6 Translating

  44. Routing Protocol • Interior Routing protocol • RIP • OSPF • IGRP • Exterior Routing Protocol • EGP (Exterior Gateway Protocol) • BGP (Border Gateway Protocol)

More Related