Xem mẫu

  1. Chương 4. Giao thức tầng mạng (network layer) Trần Quang Hải Bằng Faculty of Information Technology University of Communication and Transport (Branch 2) Office location: Administration building, Block D3, Room 6 Office phone: 38962018 Cell phone: N/A Email: tqhbang@utc2.edu.vn Ch4. The Network Layer 4.1 - Giới thiệu và chức năng của tầng mạng. 4.2 - Network service model (VC and Datagram). 4.3 - Thiết bị tầng mạng - Bộ định tuyến (router). 4.4 - Giao thức IP (Internet Protocol). 4.5 - Giải thuật chọn đường (Routing Algorithms). 4.6 - Chọn đường trong mạng Internet. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 2
  2. Chức năng của tầng mạng Truyền các gói tin (packets) từ sending application host tới receiving host. transport network segment packets (datagrams). data link physical network network data link network physical Network layer được cài đặt tại router data link physical data link physical và cả end system. network data link physical network Chức năng: data link physical chọn đường (path selection): có nhiều network network data link đường đi, gói tin sẽ đi theo đường nào? data link physical physical chuyển mạch (switching, forwarding): network data link application chuyển gói tin từ cổng vào tới cổng ra của physical transport network router một cách thích hợp. data link physical thiết lập liên kết (call setup): một số kiến trúc mạng cần thiết lập kênh truyền trước khi truyền. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 3 Routing & switching in routers routing algorithm local forwarding table header value output link 0100 3 0101 2 0111 2 1001 1 value in arriving packet’s header 0111 1 3 2 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 4
  3. Ch4. The Network Layer 4.1 - Giới thiệu và chức năng của tầng mạng. 4.2 - Network service model (VC and Datagram). 4.3 - Thiết bị tầng mạng - Bộ định tuyến (router). 4.4 - Giao thức IP (Internet Protocol). 4.5 - Giải thuật chọn đường (Routing Algorithms). 4.6 - Chọn đường trong mạng Internet. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 5 Network service model Tầng mạng cung cấp dịch vụ cho tầng Transport: tin cậy vào tầng network? các gói tin có đến đích đúng thứ tự đã gửi? thời gian truyền có được đảm bảo? có phản hồi về tình trạng nghẽn mạng? Hai model cơ bản của tầng mạng: kênh ảo (virtual circuit) lược đồ (gam) dữ liệu (datagram) 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 6
  4. Virtual Circuit Thiết lập liên kết trước khi truyền dữ liệu và huỷ bỏ liên kết sau khi truyền xong. VC setup: trước khi truyền, tầng mạng phải thiết lập một kênh truyền ảo (VC) từ sender tới receiver (đã biết địa chỉ). Data transfer: dữ liệu được truyền qua VC. VC teardown: một khi sender hoặc receiver muốn ngắt VC, nó thông báo cho network layer biết, network layer sẽ huỷ bỏ VC. Còn được gọi là connection-oriented Mỗi gói tin chứa thêm thông tin về kênh mà nó sẽ đi qua (VC identifier number). Các routers/packet switches trên kênh ảo (VC) luôn nắm giữ trạng thái của kênh đi qua nó. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 7 Virtual Circuit: Signaling protocol Giao thức truyền các thông điệp giữa end system và network layer để yêu cầu thiết lập, huỷ bỏ VC; giữa các thiết bị chuyển mạch (switches) để thiết lập VC. Được sử dụng trong mạng ATM, Frame Relay, X.25. application 6. Receive data application transport 5. Data flow begins network 4. Call connected 3. Accept call transport data link 1. Initiate call 2. incoming call network data link physical physical 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 8
  5. application application transport transport network network data link host A physical server B data link physical S khác bi t gi a liên k t t i t ng Transport và Network? application application transport transport network network data link data link physical physical 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 9 Datagram network Không thiết lập kênh truyền. Các thiết bị chuyển mạch không cần nắm giữ trạng thái các kênh. Gói tin được truyền dựa trên địa chỉ của receiving host. Đường đi của các gói tin giữa hai host có thể khác nhau. application application transport transport network data link 1. Send data 2. Receive data network data link physical physical 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 10
  6. Network taxonomy (review) communication networks switched broadcast networks networks (vd. Radio, Broadcast TV) circuit-switched packet-switched networks networks (vd. telephone) datagram virtual circuit- networks switched FDM TDM networks (vd. Internet) (vd. ATM) 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 11 Datagram or VC network: why? Internet ATM Mạng máy tính: Mạng điện thoại (chuyển mạch kênh). dịch vụ nhạy cảm. Tương tác người-người đòi hỏi: không giới hạn thời gian. thời gian truyền. Các hệ thống cuối “thông minh” độ tin cậy. (computer): dịch vụ phải được đảm bảo. có khả năng thích nghi, kiểm Các thiết bị cuối đơn giản, dường như soát, khôi phục lỗi. cố định: kiến trúc bên trong mạng đơn điện thoại. giản nhưng kết nối các mạng mức độ phức tạp nằm bên trong phức tạp. mạng. Nhiều dạng liên kết mạng dẫn đến một dịch vụ thuần nhất (kênh) là không thích hợp. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 12
  7. Ch4. The Network Layer 4.1 - Giới thiệu và chức năng của tầng mạng. 4.2 - Network service model (VC and Datagram). 4.3 - Thiết bị tầng mạng - Bộ định tuyến (router). 4.4 - Giao thức IP (Internet Protocol). 4.5 - Giải thuật chọn đường (Routing Algorithms). 4.6 - Chọn đường trong mạng Internet. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 13 Bộ định tuyến – router Thực thi các giải thuật chọn đường (routing algorithms). Chuyển tiếp (forwarding) các gói tin từ cổng vào tới cổng ra thích hợp. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 14
  8. Input ports Physical layer: bit-level reception Data link layer: Decentralized switching: e.g., Ethernet sử dụng forwarding table có trong input port memory để tra cứu output port queuing: nếu các gam dữ liệu (datagram) đến nhanh quá, cần phải xếp hàng chờ xử lý. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 15 Các cơ cấu chuyển mạch (switching fabrics) 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 16
  9. Output ports Buffering: khi datagram được gửi ra nhanh hơn tốc độ xử lý, cần đưa vào bộ đệm. Scheduling discipline: cơ chế lựa chọn datagram từ bộ đệm để tiếp tục gửi đi. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 17 Ch4. The Network Layer 4.1 - Giới thiệu và chức năng của tầng mạng. 4.2 - Network service model (VC and Datagram). 4.3 - Thiết bị tầng mạng - Bộ định tuyến (router). 4.4 - Giao thức IP (Internet Protocol). 4.5 - Giải thuật chọn đường (Routing Algorithms). 4.6 - Chọn đường trong mạng Internet. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 18
  10. The Internet (TCP/IP) network layer Network layer được thực thi tại end system cũng như tại router! Transport layer: TCP, UDP Routing protocols IP protocol •path selection •addressing conventions •RIP, OSPF, BGP •datagram format Network •packet handling conventions layer routing table ICMP protocol •error reporting •router “signaling” Link layer physical layer 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 19 IP datagram format IP protocol version 32 bits number total datagram header length type of length (bytes) ver head. length (bytes) len service for “type” of data fragment 16-bit identifier flgs fragmentation/ offset reassembly max number time to upper Internet remaining hops live layer checksum (decremented at 32 bit source IP address each router) 32 bit destination IP address upper layer protocol to deliver payload to Options (if any) E.g. timestamp, 6 = TCP; 17 = UDP record route data taken, specify (variable length, list of routers typically a TCP to visit. or UDP segment) 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 20
  11. IP datagram - example Sender’s MAC address Receiver’s MAC address Type of upper layer’s protocol ( 0x0800 = IP ) 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 21 Id IP version: 4 TOS IP’s Header Total length: Header length: 20 bytes 72 bytes Flags & Fragment’s offset TTL Transport’s protocol: UDP Checksum Source’s IP: 192.168.1.10 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 22
  12. IP’s Header Dest’s IP: 203.162.4.190 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 23 Phân tích gói tin tầng Internet - Transport Địa chỉ MAC của sender & receiver ? Địa chỉ IP của sender và receiver ? Độ dài tổng của IP datagram ? What are your TTL của IP datagram? Source’s IP, destination’s IP ? answers ? Giao thức sử dụng ở tầng Application ? 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 24
  13. IP Fragmentation & Reassembly Fragmentation: gam dữ liệu (datagram) lớn được chia thành nhiều gam dữ liệu nhỏ. fragmentation: in: one large datagram Do mỗi đường truyền giữa out: 3 smaller datagrams các nút (link) có tốc độ giới hạn, chỉ cho phép truyền đơn vị dữ liệu có kích thước tối đa là MTU (Max Transfer Unit) reassembly Reassembly: Các gam dữ liệu nhỏ được hợp nhất thành gam dữ liệu lớn (ngược lại) tại điểm đến cuối cùng 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 25 Example length ID fragflag offset =4000 =x =0 =0 4000 byte datagram gam dữ liệu lớn được chia thành MTU = 1500 bytes nhiều gam dữ liệu nhỏ hơn length ID fragflag offset =1500 =x =1 =0 1480 bytes in data field length ID fragflag offset =1500 =x =1 =185 offset = 1480/8 length ID fragflag offset =1040 =x =0 =370 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 26
  14. IPv4 Addressing: introduction IP address: Số 32-bit định danh giao diện mạng (interface). Interface (NIC - Network Interface Card): giao diện kết nối mạng từ nút mạng tới mạng. host interface: mỗi máy tính thường có một NIC, cho phép nối vào một đường liên kết. router interface: router thường có nhiều giao diện mạng. 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.2.2 32-bit = 4 s 8-bit d ng th p phân d nh : 223.1.1.3 223.1.3.27 223.1.1.1 = 11011111 00000001 00000001 00000001 223.1.3.2 223.1.3.1 223 1 1 1 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 27 Mạng & mạng con (subnet) Internet = network of networks. 223.1.1.1 Địa chỉ IP bao gồm 2 phần: 223.1.2.1 Các bit cao dành cho network. 223.1.1.2 Các bit thấp dành cho host. 223.1.1.4 223.1.2.9 223.1.2.2 223.1.1.3 223.1.3.27 Network: LAN Mạng tạo bởi các interface có 223.1.3.1 223.1.3.2 phần network trong IP addr giống nhau. Các host cùng network có thể network = 3 IP networks trao đổi dữ liệu không cần thông qua router. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 28
  15. IP addressing: Class-full 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 29 Subnet Đôi khi cần chia nhỏ một mạng thành các mạng nhỏ hơn (subnet) Ví dụ: 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 30
  16. Subnet mask Một interface trong mạng cần có: IP address Mặt nạ mạng con (subnet mask): Là một số 32 bit bao gồm các bit cao = 1 và các bit thấp = 0. Các bit 1 quy định subnet, các bit 0 quy định địa chỉ host. từ subnet mask có thể xác định ranh giới giữa địa chỉ mạng và địa chỉ của interface (host). Ví dụ: Subnet gồm các host 192.168.10.x, một host có thể có thông số như sau: IP = 192.168.10.1 SM = 255.255.255.0 (111111111.11111111.11111111.00000000) Kiểm tra xem hai IP có cùng một subnet không? (IP1 XOR IP2) AND SM = 0? 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 31 Network addr, Broadcast và loopback Để ám chỉ một mạng, thay địa chỉ host bằng các bit 0, ví dụ: 192.168.10.0 Broadcast: Địa chỉ host thay bằng các bit 1, vd: 192.168.10.255 Các gói tin có ip đích dạng broadcast sẽ được gửi cho mọi host trong mạng. Loopback ip: 127.x.x.x các gói tin được coi như được gửi tới từ nút khác. thường dùng 127.0.0.1 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 32
  17. IP addressing: CIDR Class-full addressing: sự phân lớp cứng nhắc, không còn thích hợp nữa. CIDR (Classless InterDomain Routing): Vị trí ngăn cách giữa net addr và host addr tuỳ ý. addr format: a.b.c.d/x, với x là số lượng bit dành cho net addr. network host part part 11001000 00010111 00010000 00000000 200.23.16.0/23 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 33 IP addresses: how to get one? Làm thế nào để có địa chỉ IP cho host? Người quản trị hệ thống thiết lập (TCP/IP properties trong Windows 2000/XP). RARP (Reverse Address Resolution Protocol): RARP server cung cấp IP cho client dựa trên bảng cấu hình sẵn có (từ địa chỉ vật lý (MAC) IP). BOOTP (BOOTstrap Protocol): BOOTP server cung cấp IP cho client dựa trên bảng cấu hình sẵn có. DHCP (Dynamic Host Configuration Protocol): Giao thức cấp phát địa chỉ IP động. DHCP server phụ trách việc cấp phát/thu hồi IP cho/từ các DHCP client. Client có thể nhận IP khác nhau tuỳ thời điểm kết nối. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 34
  18. Phân cấp địa chỉ Internet - ISP ISP's block 11001000 00010111 00010000 00000000 200.23.16.0/20 ICANN: Internet Corporation for Organization 0 11001000 00010111 00010000 00000000 200.23.16.0/23 Organization 1 11001000 00010111 00010010 00000000 200.23.18.0/23 Assigned Names Organization 2 11001000 00010111 00010100 00000000 200.23.20.0/23 and Numbers ... .. . . Organization 7 11001000 00010111 00011110 00000000 200.23.30.0/23 Organization 0 200.23.16.0/23 Organization 1 “Send me anything 200.23.18.0/23 with addresses Organization 2 beginning 200.23.20.0/23 . Fly-By-Night-ISP 200.23.16.0/20” . . . Internet . Organization 7 . 200.23.30.0/23 “Send me anything ISPs-R-Us with addresses beginning 199.31.0.0/16” 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 35 NAT: Network Address Translation rest of local network Internet (e.g., home network) 10.0.0/24 10.0.0.1 10.0.0.4 10.0.0.2 138.76.29.7 10.0.0.3 All datagrams leaving local Datagrams with source or network have same single source destination in this network NAT IP address: 138.76.29.7, have 10.0.0/24 address for different source port numbers source, destination (as usual) 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 36
  19. NAT: Network Address Translation (cont) Một LAN chỉ sử dụng một IP duy nhất khi giao tiếp với mạng ngoài. Từ đó: Không cần tìm dải IP từ ISP để cấp phát cho các thiết bị mạng trong (máy trạm) vì chỉ dùng 1 IP. Thay đổi IP của máy trạm nội bộ mà không ảnh hưởng tới mạng ngoài. Thay đổi ISP mà không cần thay đổi địa chỉ các thiết bị mạng trong. Các thiết bị mạng trong không “nhìn thấy” được từ mạng ngoài. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 37 NAT: Implementation NAT router: outgoing datagrams: replace (source IP address, port #) of every outgoing datagram to (NAT IP address, new port #) . . . remote clients/servers will respond using (NAT IP address, new port #) as destination addr. remember (in NAT translation table) every (source IP address, port #) to (NAT IP address, new port #) translation pair incoming datagrams: replace (NAT IP address, new port #) in dest fields of every incoming datagram with corresponding (source IP address, port #) stored in NAT table 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 38
  20. NAT example NAT translation table 2: NAT router 1: host 10.0.0.1 WAN side addr LAN side addr changes datagram sends datagram to 138.76.29.7, 5001 10.0.0.1, 3345 128.119.40, 80 source addr from …… …… 10.0.0.1, 3345 to 138.76.29.7, 5001, S: 10.0.0.1, 3345 updates table D: 128.119.40.186, 80 10.0.0.1 1 S: 138.76.29.7, 5001 2 D: 128.119.40.186, 80 10.0.0.4 10.0.0.2 138.76.29.7 S: 128.119.40.186, 80 D: 10.0.0.1, 3345 4 S: 128.119.40.186, 80 D: 138.76.29.7, 5001 3 10.0.0.3 4: NAT router 3: Reply arrives changes datagram dest. address: dest addr from 138.76.29.7, 5001 138.76.29.7, 5001 to 10.0.0.1, 3345 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 39 ICMP (Internet Control Message Protocol) Giao tiếp ở mức mạng giữa các Type Code description hosts, routers 0 0 echo reply (ping) thông báo lỗi (vd: không tìm được 3 0 dest. network unreachable đường đi, không gửi tin được tới 3 1 dest host unreachable host, port…). 3 2 dest protocol unreachable echo request/reply. 3 3 dest port unreachable ICMP có thể coi là một thành 3 6 dest network unknown phần của IP 3 7 dest host unknown về mặt kiến trúc, ICMP thuộc về 4 0 source quench (congestion tầng ứng dụng. control - not used) sử dụng UDP. 8 0 echo request (ping) ICMP msg 9 0 route advertisement 10 0 router discovery được đóng gói trong IP datagrams/packet. 11 0 TTL expired 12 0 bad IP header type + code + 8 bytes of IP datagram. 23/08 - 10/10/2010 Chương 4. Giao th c t ng m ng 40
nguon tai.lieu . vn