Bài giảng Giao thức tầng mạng (network layer)
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Giao thức tầng mạng (network layer)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_giao_thuc_tang_mang_network_layer.ppt
Nội dung text: Bài giảng Giao thức tầng mạng (network layer)
- Chương 4. Giao thức tầng mạng (network layer) Đoàn Thị Thu Hà
- 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 - 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. 1-6/2005 Chương 4. Giao thức tầng mạng 2
- Chức năng của tầng mạng application transport network data link network physical network data link network data link physical data link physical physical network data link physical network data link physical network network data link data link physical physical network data link application physical transport network data link physical 1-6/2005 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 1-6/2005 Chương 4. Giao thức tầng mạng 4
- 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 - 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. 1-6/2005 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 đồ dữ liệu (datagram) 1-6/2005 Chương 4. Giao thức tầng mạng 6
- 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ó. 1-6/2005 Chương 4. Giao thức tầng mạng 7
- Virtual Circuit: Các giao thức báo hiệu ◼ Được sử dụng để thiết lập, duy trì và kết thúc các mạch ảo ◼ Được sử dụng trong mạng như ATM, Frame Relay, X.25. ◼ Không được sử dụng trong mạng Internet ngày nay 1-6/2005 Chương 4. Giao thức tầng mạng 8
- application application transport transport network network data link data link physicalhost A serverphysical B 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 1-6/2005 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 network data link 1. Send data 2. Receive data data link physical physical 1-6/2005 Chương 4. Giao thức tầng mạng 10
- 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 1-6/2005 Chương 4. Giao thức tầng mạng 11
- 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 =1060 =x =0 =370 1-6/2005 Chương 4. Giao thức tầng mạng 12
- 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) 1-6/2005 Chương 4. Giao thức tầng mạng 13
- Datagram or VC network: why? Internet ATM(Asynchronous Transfer ◼ Mạng máy tính: Mode ) dịch vụ nhạy cảm. ◼ Mạng điện thoại (chuyển mạch kênh). không giới hạn thời gian. ◼ Tương tác người-người đòi hỏi: ◼ Các hệ thống cuối “thông minh” thời gian truyền. (computer): độ tin cậy. có khả năng thích nghi, kiểm soát, khôi phục lỗi. dịch vụ phải được đảm bảo. ◼ Các thiết bị cuối đơn giản, dường như kiến trúc bên trong mạng đơn giản nhưng kết nối các mạng cố định: phức tạp. điện thoại. ◼ Nhiều dạng liên kết mạng dẫn đến mức độ phức tạp nằm bên trong một dịch vụ thuần nhất (kênh) là mạng. không thích hợp. 1-6/2005 Chương 4. Giao thức tầng mạng 14
- 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 - 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. 1-6/2005 Chương 4. Giao thức tầng mạng 15
- 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. 1-6/2005 Chương 4. Giao thức tầng mạng 16
- Chọn đường và chuyển tiếp gói tin
- Định Tuyến
- 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ý. 1-6/2005 Chương 4. Giao thức tầng mạng 19
- 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. 1-6/2005 Chương 4. Giao thức tầng mạng 20
- 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. 1-6/2005 Chương 4. Giao thức tầng mạng 21
- Internet Protocol
- The Internet (TCP/IP) network layer Network layer được thực thi tại end system cũng như tại router! Network layer 1-6/2005 Chương 4. Giao thức tầng mạng 23
- Đặc điểm của giao thức IP
- Định danh các nút trên mạng
- Mạng và Trạm
- Xác định lộ trình
- IP datagram format data (variable length, typically a TCP or UDP segment) 29/70
- IP datagram format ◼ Version (4 bit): IPv4 hoặc IPv6 ◼ IHL (IP packet Header Length) (4 bit): đơn vị word 32 bit. Min = 5 (không có thêm trường tuỳ chọn) Max = 15 (trường tuỳ chọn là 40 byte) Đối với một số tuỳ chọn, thí dụ để ghi con đường mà packet đã đi qua, 40 byte là quá nhỏ, không thể dùng được. 30/70
- IP datagram format ◼ Trường Type of service (8 bits): Dịch vụ và mức ưu tiên. Ý nghĩa của nó được người ta thay đổi chút ít trong các năm qua. Có thể có nhiều cách kết hợp khác nhau giữa độ tin cậy và tốc độ. Đối với tiếng nói được số hoá, việc phân phát nhanh quan trọng hơn phân phát chính xác. Đối với FTP, việc truyền không có lỗi quan trọng hơn việc truyền nhanh. Bản thân chính trường này lại bao gồm một số trường, tính từ trái qua phải như sau: ◼ Precedence (3 bit đầu tiên): quyền ưu tiên; 0 = normal, , 7 = network control packet. ◼ Cờ D, T và R (3 bit tiếp theo): cho phép host chỉ ra là nó quan tâm (cần) đến gì nhất trong tập hợp {Delay, Throughput và Reliability}. Trong thực tế, các router hiện nay lờ toàn bộ trường Type of service. ◼ 2 bit còn lại hiện nay chưa dùng đến. 31/70
- IP datagram format ◼ Trường Total Length (16 bits): Tổng chiều dài packet, kể cả header lẫn data, đơn vị = byte. Max = 65535 byte Hiện nay giới hạn trên là có thể chấp nhận được Với các mạng Gigabit trong tương lai sẽ cần đến các datagram lớn hơn. 32/70
- IP datagram format Trường Identification (16 bit): từ định danh của datagram (IP packet) Dùng cho host đích xác định được mảnh (fragment) thuộc về datagram nào. Tất cả các mảnh của một datagram có cùng một giá trị của trường Identification. 33/70
- IP datagram format ◼ Trường Flags (2 bits): dùng cho quá trình Fragmentation/ Reassembly Sau trường Identification là một bit không dùng đến. Flags gồm 2 trường 1 bit là DF và MF. DF (Don't Fragment): lệnh cho các router đừng có phân mảnh datagram. ◼ → Datagram phải tránh mạng có kích thước packet nhỏ. ◼ Tất cả các máy được yêu cầu chấp nhận việc phân mảnh đến 576 byte hoặc nhỏ hơn. MF (More Fragments): Tất cả các mảnh của datagram, trừ mảnh cuối cùng phải có bit MF=1 → để biết được khi nào tất cả các mảnh của một datagram đã đến đích. 34/70
- IP datagram format ◼ Trường Fragment offset (13 bits): cho biết khoảng cách tương đối của gói tin IP trong gói tin bị phân mảnh. Tất cả các mảnh của một datagram, trừ mảnh cuối cùng phải có chiều dài là bội số của 8 bytes - đơn vị cơ sở của mảnh. 13 bit → nên số mảnh lớn nhất của một datagram là 8192 35/70
- IP datagram format ◼ Trường Time to live – TTL (8 bits): con đếm thời gian sống của một packet Khi = 0, packet bị loại bỏ và một packet cảnh báo được gửi cho bên nguồn → Ngăn chặn các datagram đi lang thang mãi (nếu bảng chọn đường có lúc bị hỏng) Giả thiết đơn vị là giây → max = 255s; thường được đặt = 30s Phải được giảm đi một tại mỗi chặng (hop) và được giảm nhiều lần khi đứng xếp hàng một thời gian dài trong mỗi router. Thực tế, nó chỉ đếm các chặng. 36/70
- IP datagram format ◼ Trường Protocol (8 bits): Chỉ loại số liệu giao thức mức trên nằm trong trường Data. Cho biết cần trao datagram cho quá trình nào của tầng transport. ◼ Một khả năng là TCP ◼ Nhưng cũng có thể là UDP và các quá trình khác. Việc đánh số các giao thức là trên phạm vi toàn cầu, trên toàn bộ Internet, được định nghĩa trong chuẩn RFC 1700. 37/70
- IP datagram format ◼ Trường Header checksum (16 bits): Tính riêng cho header, giúp phát hiện các lỗi phát sinh trong bộ nhớ của router. Được tính lại tại mỗi chặng (hop), bởi vì sau mỗi chặng có ít nhất là một trường bị thay đổi (trường TTL). Cách tính: cộng tất cả các 16-bit halfwords sử dụng số dạng bù 1; sau đó lấy bù 1 của kết quả (phép toán XOR → tốc độ cao). 38/70
- IP datagram format ◼ Trường Source address, Destination address (32 bit): Địa chỉ IP của bên gửi và nhận Mỗi địa chỉ bao gồm: địa chỉ mạng và địa chỉ host trong mạng ◼ Trường Options: Tạo ra lối thoát cho các version sau: Bổ sung thêm các thông tin không có trong version đầu tiên Thí nghiệm thử các ý tưởng mới và để tránh việc phải dành (allocate) các bit của header cho các thông tin hiếm khi cần đến. Chiều dài có thể thay đổi: 0 (15 – 5) x 32 bits Mỗi Option bắt đầu bằng một mã 1 byte chỉ ra tuỳ chọn cont. → 39/70
- IP datagram format Trường Options: Hiện thời có 5 tuỳ chọn (option) đã được định nghĩa ◼ Security (an ninh) Chỉ ra mức độ bí mật của datagram ◼ Strict source routing Chỉ ra con đường đầy đủ để đi theo ◼ Loose source routing Chỉ ra danh sách các router không được bỏ qua ◼ Record route Buộc mỗi router gắn địa chỉ IP của nó vào ◼ Timestamp Buộc mỗi router gắn địa chỉ IP và timestamp của nó vào Tuy nhiên không phải mọi router đều hỗ trợ tất cả các tuỳ chọn này. Padding: Được chèn thêm sao cho chiều dài Header = bội của 32 bits ◼ Trường Data (32 bits): Số liệu của giao thức tầng trên. 40/70
- 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.1 223.1.3.2 223 1 1 1 1-6/2005 Chương 4. Giao thức tầng mạng 41
- Mạng và mạng con ◼ 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. 1-6/2005 Chương 4. Giao thức tầng mạng 42
- Mạng và mạng con
- Tính di động
- Xem địa chỉ MAC và IP
- IPv4 Address
- IP v4 addressing: Class-full 1-6/2005 Chương 4. Giao thức tầng mạng 47
- Địa chỉ máy trạm, địa chỉ mạng
- Phân lớp địa chỉ
- Subnet ◼ Đôi khi cần chia nhỏ một mạng thành các mạng nhỏ hơn (subnet) ◼ Ví dụ: 1-6/2005 Chương 4. Giao thức tầng mạng 50
- 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? 1-6/2005 Chương 4. Giao thức tầng mạng 51
- Class A
- Các khối địa chỉ lớp A
- Class B
- Các khối địa chỉ lớp B
- Class C
- Các khối địa chỉ lớp C
- Ví dụ về địa chỉ mạng
- Fill in The information
- Fill in The information
- 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 1-6/2005 Chương 4. Giao thức tầng mạng 61
- Sự khủng hoảng của địa chỉ IPv4