1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Mạng máy tính: Chương 4 - Nguyễn Quang Hải Bằng

39 8 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 39
Dung lượng 1,04 MB

Nội dung

 Bài giảng Mạng máy tính - Chương 4: Giao thức tầng mạng (network layer) cung cấp cho người học các kiến thức: Giới thiệu và chức năng của tầng mạng, Network service model, thiết bị tầng mạng - Bộ định tuyến, giao thức IP, giải thuật chọn đường, chọn đường trong mạng Internet. Mời các bạn cùng tham khảo nội dung chi tiết.

Chương 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 Office phone: 38962018 Cell phone: N/A Email: tqhbang@utc2.edu.vn Ch4 The Network Layer 4.1 - Giới thiệu chức 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 mạng Internet 23/08 - 10/10/2010 Chương Giao thức tầng mạng Chức tầng mạng Truyền gói tin (packets) từ sending application host tới receiving host transport segment network data link physical packets (datagrams) Network layer cài đặt router end system Chức năng: chọn đường (path selection): có nhiều đường đi, gói tin theo đường nào? chuyển mạch (switching, forwarding): chuyển gói tin từ cổng vào tới cổng router cách thích hợp thiết lập liên kết (call setup): số kiến trúc mạng cần thiết lập kênh truyền trước truyền Chương Giao thức tầng mạng 23/08 - 10/10/2010 network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical Routing & switching in routers routing algorithm local forwarding table header value output link 0100 0101 0111 1001 2 value in arriving packet’s header 0111 23/08 - 10/10/2010 Chương Giao thức tầng mạng Ch4 The Network Layer 4.1 - Giới thiệu chức 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 mạng Internet 23/08 - 10/10/2010 Chương Giao thức tầng mạng 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? gói tin có đến đích thứ tự gửi? thời gian truyền có đảm bảo? có phản hồi tình trạng nghẽn mạng? Hai model tầng mạng: kênh ảo (virtual circuit) lược đồ (gam) liệu (datagram) 23/08 - 10/10/2010 Chương Giao thức tầng mạng Virtual Circuit Thiết lập liên kết trước truyền liệu huỷ bỏ liên kết sau truyền xong VC setup: trước truyền, tầng mạng phải thiết lập kênh truyền ảo (VC) từ sender tới receiver (đã biết địa chỉ) Data transfer: liệu truyền qua VC VC teardown: sender receiver muốn ngắt VC, thơng báo cho network layer biết, network layer huỷ bỏ VC Cịn gọi connection-oriented Mỗi gói tin chứa thêm thơng tin kênh mà qua (VC identifier number) Các routers/packet switches kênh ảo (VC) nắm giữ trạng thái kênh qua 23/08 - 10/10/2010 Chương Giao thức tầng mạng Virtual Circuit: Signaling protocol Giao thức truyền thông điệp end system network layer để yêu cầu thiết lập, huỷ bỏ VC; thiết bị chuyển mạch (switches) để thiết lập VC Được sử dụng mạng ATM, Frame Relay, X.25 application transport Data flow begins network Call connected data link Initiate call physical 23/08 - 10/10/2010 Receive data application Accept call transport incoming call network Chương Giao thức tầng mạng data link physical application transport network data link physical host A application transport network data link physical server B Sự khác biệt liên kết tầng Transport Network? application transport network data link physical 23/08 - 10/10/2010 application transport network data link physical Chương Giao thức tầng mạng 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 kênh Gói tin truyền dựa địa receiving host Đường gói tin hai host khác application transport network data link Send data physical 23/08 - 10/10/2010 application transport Receive data network data link physical Chương Giao thức tầng mạng 10 Network taxonomy (review) communication networks switched networks circuit-switched networks (vd telephone) FDM 23/08 - 10/10/2010 TDM broadcast networks (vd Radio, Broadcast TV) packet-switched networks datagram networks (vd Internet) virtual circuitswitched networks (vd ATM) Chương Giao thức tầng mạng 11 Datagram or VC network: why? Internet ATM Mạng máy tính: dịch vụ nhạy cảm không giới hạn thời gian Các hệ thống cuối “thơng minh” (computer): có khả thích nghi, kiểm sốt, khơi phục lỗi kiến trúc bên mạng đơn giản kết nối mạng phức tạp Nhiều dạng liên kết mạng dẫn đến dịch vụ (kênh) khơng thích hợp 23/08 - 10/10/2010 Mạng điện thoại (chuyển mạch kênh) Tương tác người-người đòi hỏi: thời gian truyền độ tin cậy dịch vụ phải đảm bảo Các thiết bị cuối đơn giản, dường cố định: điện thoại mức độ phức tạp nằm bên mạng Chương Giao thức tầng mạng 12 Ch4 The Network Layer 4.1 - Giới thiệu chức 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 mạng Internet 23/08 - 10/10/2010 Chương Giao thức tầng mạng 13 Bộ định tuyến – router Thực thi giải thuật chọn đường (routing algorithms) Chuyển tiếp (forwarding) gói tin từ cổng vào tới cổng thích hợp 23/08 - 10/10/2010 Chương Giao thức tầng mạng 14 Input ports Physical layer: bit-level reception Data link layer: e.g., Ethernet 23/08 - 10/10/2010 Decentralized switching: sử dụng forwarding table có input port memory để tra cứu output port queuing: gam liệu (datagram) đến nhanh quá, cần phải xếp hàng chờ xử lý Chương Giao thức tầng mạng 15 Các cấu chuyển mạch (switching fabrics) 23/08 - 10/10/2010 Chương Giao thức tầng mạng 16 Output ports Buffering: datagram gửi nhanh tốc độ xử lý, cần đưa vào đệm Scheduling discipline: chế lựa chọn datagram từ đệm để tiếp tục gửi 23/08 - 10/10/2010 Chương Giao thức tầng mạng 17 Ch4 The Network Layer 4.1 - Giới thiệu chức 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 mạng Internet 23/08 - 10/10/2010 Chương Giao thức tầng mạng 18 The Internet (TCP/IP) network layer Network layer thực thi end system router! Transport layer: TCP, UDP Network layer IP protocol •addressing conventions •datagram format •packet handling conventions Routing protocols •path selection •RIP, OSPF, BGP routing table ICMP protocol •error reporting •router “signaling” Link layer physical layer 23/08 - 10/10/2010 19 Chương Giao thức tầng mạng IP datagram format IP protocol version number header length (bytes) “type” of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to = TCP; 17 = UDP 23/08 - 10/10/2010 32 bits type of ver head len service length fragment 16-bit identifier flgs offset time to upper Internet layer live checksum total datagram length (bytes) for fragmentation/ reassembly 32 bit source IP address 32 bit destination IP address Options (if any) data (variable length, typically a TCP or UDP segment) Chương Giao thức tầng mạng E.g timestamp, record route taken, specify list of routers to visit 20 Forwarding & routing routing algorithm local forwarding table header value output link 0100 0101 0111 1001 2 value in arriving packet’s header 0111 23/08 - 10/10/2010 49 Chương Giao thức tầng mạng Network: graph abstraction u v x w z y Network = Graph = G(N,E) N = tập hợp routers = { u, v, w, x, y, z } E = tập đường nối routers = { (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) } Trọng số = chi phí (cost): độ trễ, độ nghẽn mạng, cước phí… Đường tốt = đường có “chi phí” thấp 23/08 - 10/10/2010 Chương Giao thức tầng mạng 50 Routing Algorithm classification Thông tin tập trung hay phân tán? Tĩnh hay động? Tập trung: Tĩnh: router phải nắm giữ thơng tin tồn đường thay đổi mạng (topology, link cost…) Động: “link state” algorithms đường thay đổi Phân tán: thường xuyên router nắm chi phí truyền tin tới các thơng tin dẫn router nối trực tiếp với (hàng đường cập xóm) nhật định kỳ q trình tính tốn mang tính chất lặp lặp lại, trao đổi thông tin link cost thay đổi routers “distance vector” algorithms 23/08 - 10/10/2010 Chương Giao thức tầng mạng 51 A Link-State Routing Algorithm Giải thuật Dijkstra: tất nút mạng có thơng tin liên kết tồn mạng cho phép tìm đường từ nút tới tất nút lại Ký hiệu: c(i,j): chi phí phải trả để từ i tới j (trực tiếp) D(v): giá trị chi phí phải trả để từ đỉnh xuất phát tới đỉnh v p(v): đỉnh trước đỉnh v đường ngắn N: tập hợp đỉnh mà đường ngắn xác định 23/08 - 10/10/2010 Chương Giao thức tầng mạng 52 Dijsktra’s Algorithm Initialization: N = {A} for all nodes v if v kề với A then D(v) = c(A,v) else D(v) = ∞ Loop Tìm w không thuộc N cho D(w) nhỏ 10 N = N + w 11 for all v kề với w không thuộc N: 12 D(v) = min( D(v), D(w) + c(w,v) ) 13 until tất nút thuộc N Chương Giao thức tầng mạng 23/08 - 10/10/2010 53 Dijkstra’s algorithm: example Step N A AD ADE ADEB ADEBC ADEBCF D(B),p(B) D(C),p(C) D(D),p(D) D(E),p(E) D(F),p(F) 2,A 1,A 5,A ∞ ∞ 2,A 4,D 2,D ∞ 2,A 3,E 4,E 3,E 4,E 4,E A 23/08 - 10/10/2010 B D C F E Chương Giao thức tầng mạng 54 Distance Vector Routing Algorithm Distance Table data structure nút mạng có bảng khoảng cách hàng dành cho đích đến cột dành cho nút đến trực tiếp (hàng xóm) Ví dụ: nút X, với đích Y đến qua nút Z: chi phí cho đường (X Z = Z nút cần tới X D (Y,Z) Y) Z = c(X,Z) + minw{D (Y,w)} 55 Chương Giao thức tầng mạng 23/08 - 10/10/2010 Distance Table: example A C E A B D A 14 B C D 11 D E D D (C,D) = c(E,D) + minw {D (C,w)} = 2+2 = E D D (A,D) = c(E,D) + minw {D (A,w)} E D () cost to destination via E destination B = 2+3 = loop! B D (A,B) = c(E,B) + minw{D (A,w)} = 8+6 = 14 23/08 - 10/10/2010 loop! Chương Giao thức tầng mạng 56 Distance table E routing table cost to destination via Outgoing link to use, cost B D A 14 A A,1 B B D,5 C C D,4 D 11 D D,4 Distance table destination A destination D () Routing table Chương Giao thức tầng mạng 23/08 - 10/10/2010 57 DV Algorithm: Initialization At all nodes, X: Initialization: for all adjacent nodes v: DX(*,v) = infinity /* the * operator means "for all rows" */ X D (v,v) = c(X,v) for all destinations, y X send D (y,w) to each neighbor /* w over all X's neighbors */ w 23/08 - 10/10/2010 Chương Giao thức tầng mạng 58 DV Algorithm: Loop loop wait (until I see a link cost change to neighbor V 10 or until I receive update from neighbor V) 11 12 if (c(X,V) changes by d) 13 /* change cost to all dest's via neighbor v by d */ 14 /* note: d could be positive or negative */ 15 for all destinations y: DX(y,V) = DX(y,V) + d 16 17 else if (update received from V wrt destination Y) 18 /* shortest path from V to some Y has changed */ 19 /* V has sent a new value for its w DV(Y,w) */ 20 /* call this received new value is "newval" */ 21 for the single destination y: D X(Y,V) = c(X,V) + newval 22 23 if we have a new minw DX(Y,w)for any destination Y 24 send new value of DX(Y,w) to all neighbors w 26 forever 59 Chương Giao thức tầng mạng 23/08 - 10/10/2010 DV Algorithm: example X Y Z Y X D (Z,Y) = c(X,Y) + minw {D (Z,w)} = 2+1 = Z X D (Y,Z) = c(X,Z) + minw{D (Y,w)} = 7+1 = 23/08 - 10/10/2010 Chương Giao thức tầng mạng 60 DV Algorithm: example X Y 23/08 - 10/10/2010 Z Chương Giao thức tầng mạng 61 Một vài so sánh (LS DV) Link-State Distance Vector Cần nắm thơng tin tồn mạng n nút, E links, nE msgs gửi lần O(n2), nE msgs Mỗi nút tính tốn bảng dẫn đường cho riêng 23/08 - 10/10/2010 Chỉ nắm giữ thông tin liên quan tới nút “hàng xóm” msgs gửi cho nút “hàng xóm” tốc độ hội tụ khác tuỳ tình huống, đơi rơi vào trạng thái lặp vơ hạn Thông tin dẫn đường nút sử dụng nút khác Một nút gặp cố gây ảnh hưởng tới nút khác Chương Giao thức tầng mạng 62 Hierarchical Routing Dẫn đường theo mức mạng, do: Quy mô mạng Internet lớn: nút chứa tất ghi cho đích! việc cập nhật bảng dẫn đường tốn kém! Nhu cầu mạng tự trị Internet = network of networks người quản trị mạng muốn điều khiển việc dẫn đường (routing) mạng họ quản lý 23/08 - 10/10/2010 Chương Giao thức tầng mạng 63 Hierarchical Routing (cont) Phân vùng routers, tạo thành “autonomous systems” (AS) routers AS sử dụng chung giao thức tìm đường, gọi “intra-AS” routing protocol routers AS khác sử dụng intra-AS routing protocol khác Gateway router: router đặc biệt AS sử dụng intra-AS routing protocol với routers khác AS sử dụng inter-AS routing protocol với gateway routers khác 23/08 - 10/10/2010 Chương Giao thức tầng mạng 64 Hierarchical Routing (cont) C.b Gateways: B.a •perform inter-AS routing amongst themselves •perform intra-AS routers with other routers in their AS A.a a b A.c C B a d A c a b c b network layer inter-AS, intra-AS routing in gateway A.c link layer physical layer 65 Chương Giao thức tầng mạng 23/08 - 10/10/2010 Hierarchical Routing (cont) C.b A.a a Host h1 23/08 - 10/10/2010 b C Inter-AS routing between A and B A.c B.a c a B a d c b A Intra-AS routing within AS A Host h2 b Intra-AS routing within AS B Chương Giao thức tầng mạng 66 Ch4 The Network Layer 4.1 - Giới thiệu chức 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 mạng Internet 23/08 - 10/10/2010 Chương Giao thức tầng mạng 67 Routing in the Internet Internet = nhiều Autonomous Systems (AS) : Stub AS: công ty nhỏ: kết nối với AS khác Multihomed AS: công ty lớn: nhiều liên kết tới AS khác Transit AS: nhà cung cấp (móc nối AS với nhau) Two-level routing: Intra-AS: người quản trị có quyền chọn giải thuật cho riêng mạng Inter-AS: giải thuật (inter-AS routing: BGP) 23/08 - 10/10/2010 Chương Giao thức tầng mạng 68 Internet AS Hierarchy Inter-AS border (exterior gateway) routers Intra-AS interior (gateway) routers 23/08 - 10/10/2010 Chương Giao thức tầng mạng 69 Intra-AS Routing Tên gọi khác: Interior Gateway Protocols (IGP) Các giao thức chính: RIP: Routing Information Protocol OSPF: Open Shortest Path First IGRP: Interior Gateway Routing Protocol (Cisco proprietary) 23/08 - 10/10/2010 Chương Giao thức tầng mạng 70 RIP ( Routing Information Protocol) Sử dụng Distance vector algorithm Included in BSD-UNIX Distribution in 1982 Đơn vị đo khoảng cách: số lượng chặng (hop, tối đa = 15 hops) Routing table trao đổi 30 giây lần thông qua RIP response msg (RIP advertisement), msg chứa tối đa 25 ghi v1: RFC 1058; v2: RFC 1723 u A z destination hops u v w x y z v w B C x D y 71 Chương Giao thức tầng mạng 23/08 - 10/10/2010 RIP: Example z w A x y D B C Destination Network Next Router Num of hops to dest w y z x A B B 2 … … Routing table in D 23/08 - 10/10/2010 Chương Giao thức tầng mạng 72 RIP Table processing RIP routing tables managed by application-level process called route-d (daemon) advertisements gửi định kỳ, qua UDP packets Chương Giao thức tầng mạng 23/08 - 10/10/2010 73 RIP Table example Destination -127.0.0.1 192.168.2 193.55.114 192.168.3 224.0.0.0 default Gateway Flags Ref Use Interface - - 127.0.0.1 UH 26492 lo0 192.168.2.5 U 13 fa0 193.55.114.6 U 58503 le0 192.168.3.5 U 25 qaa0 193.55.114.6 U le0 193.55.114.129 UG 143454 Three attached class C networks (LANs) Router only knows routes to attached LANs Default router used to “go up” Route multicast address: 224.0.0.0 Loopback interface (for debugging) 23/08 - 10/10/2010 Chương Giao thức tầng mạng 74 OSPF (Open Shortest Path First) “open”: publicly available; RFC 2178 Uses Link State algorithm LS packet dissemination Topology map at each node Route computation using Dijkstra’s algorithm OSPF advertisement carries one entry per neighbor router Advertisements disseminated to entire AS (via flooding) Carried in OSPF messages directly over IP (rather than TCP or UDP 23/08 - 10/10/2010 Chương Giao thức tầng mạng 75 OSPF “advanced” features (not in RIP) Security: OSPF msgs chứa thông tin chứng thực (authenticated) Multiple same-cost paths: Cho phép truyền tin theo nhiều đường có chi phí với phiên truyền tin Diff cost metrics for diff TOS: Cho phép nhiều đơn vị đo khác cho loại dịch vụ (e.g., satellite link cost set “low” for best effort; high for real time) Integrated unicast and multicast support: Multicast OSPF (MOSPF) uses same topology data base as OSPF Hierarchical OSPF in large domains 23/08 - 10/10/2010 Chương Giao thức tầng mạng 76 Hierarchical OSPF Two-level hierarchy: local area, backbone Link-state advertisements only in area each nodes has detailed area topology; only know direction (shortest path) to nets in other areas Area border routers: “summarize” distances to nets in own area, advertise to other Area Border routers Backbone routers: run OSPF routing limited to backbone Boundary routers: connect to other AS’s 77 Chương Giao thức tầng mạng 23/08 - 10/10/2010 Internet inter-AS routing: BGP BGP (Border Gateway Protocol): RFC 1771; RFC 1772; RFC 1773 R4 R5 R3 AS1 AS2 (RIP intra-AS routing) BGP R1 23/08 - 10/10/2010 BGP R2 (OSPF intra-AS routing) Chương Giao thức tầng mạng AS3 (OSPF intra-AS routing) 78 ... bên mạng Chương Giao thức tầng mạng 12 Ch4 The Network Layer 4. 1 - Giới thiệu chức 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 -. .. data B-to-C: IPv6 inside IPv4 B-to-C: IPv6 inside IPv4 Flow: X Src: A Dest: F data E-to-F: IPv6 Chương Giao thức tầng mạng 47 Ch4 The Network Layer 4. 1 - Giới thiệu chức tầng mạng 4. 2 - Network... 24 00 24 24 80 00 54 3A 36 20 6B 65 45 31 31 74 5F 6F CB 6F 6F 18 00 75 34 2E 6E 65 6E 52 35 39 6F 44 TCP at upper layer Hops Limit: 64 B6 06 B7 B6 43 14 65 36 69 6F 74 42 29 20 39 20 A9 A3 40

Ngày đăng: 10/05/2021, 14:01