Giáo trình Mạng máy tính - Đại học Bách Khoa Hà Nội
Chương 1. Tổng quan vềmạng máy tính
1.1. Giới thiệu
1.1.1. Giới thiệu nội dung môn học
1.1.2. Giới thiệu các tài liệu tham khảo
1.2. Mục đích hình thành mạng máy tính
− Nhu cầu chia sẻtài nguyên, thông tin và dịch vụ
− Các mô hình tính toán liên quan đến mạng máy tính (mô hình tập trung và
phân tán .v.v.)
− Định nghĩa mạng máy tính
− Các ứng dụng của mạng máy tính, ảnh hưởng vềmặt xã hội của mạng máy tính
và Internet
1.3. Phân loại mạng và kiến trúc vật lý của mạng
1.3.1. Phân loại mạng: LAN, MAN, WAN
1.3.2. Kiến trúc vật lý của mạng
− Khái niệm topology, các topology cơbản: bus, star, meshed, ring
− Các dạng liên kết trong mạng: đơn công, bán song công, song công
− Các khái niệm vềkết nối trong mạng:
Khái niệm chuyển mạch kênh và chuyển mạch gói
Khái niệm không liên kết (connectionless) và hướng liên kết (connection-oriented)
Kết nối điểm - điểm (point-to-point) và kết nối đa điểm (point-to-multi-point, multipoint-tomultipoint)
1.4. Mô hình tham chiếu và giao thức trên mạng
1.4.1. Tại sao phải phân lớp mạng máy tính?
1.4.2. Khái niệm giao thức (protocol) và khái niệm dịch vụ(service)
1.4.3. Các mô hình tham chiếu cơbản
− Mô hình OSI
− Mô hình Internet
− So sánh mô hình OSI và mô hình Internet
1.4.4. Các cơquan chuẩn hoá và quản lý mạng máy tính, mạng Internet:
ITU-T, IEEE, IETF và IRTF, IANA và ICANN.
1.5. Một sốthí dụvềmạng
1.5.1. Mạng LAN: Ethernet và Wireless LAN
1.5.2. Mạng WAN: X.25, Frame Relay và ATM
1.5.3. Mạng Internet
Chương 2. Mạng LAN và các vấn đề
liên quan đến lớp 1 và 2
2.1. Giới thiệu
2.1.1. Vịtrí các chức năng của mạng LAN trong mô hình OSI
− Các chức năng lớp vật lý
− Các chức năng lớp liên kết dữliệu: Truy nhập kênh truyền chung (MAC), chức
năng điều khiển các liên kết logic (LLC)
2.1.2. Vần đềchung của mạng LAN:
− Vấn đềchia sẻkênh truyền chung và điều khiển truy nhập (MAC). Yêu cầu của
các cơchếMAC: tính công bằng, hiệu suất, độtin cậy
2.2. Nhắc lại một sốkiến thức vềlý thuyết hàng đợi sẽ
được sửdụng trong môn học
Chú ý: Phần này chỉcần nhắc lại ngắn gọn vì đã được đềcập kỹcàng trong môn
Cơsởmạng thông tin (3.517)
2.2.1. Khái niệm tiến trình tới (arrival process), tiến trình phục vụ
(service process) và thông lượng mạng (throughput)
2.2.2. Định lý Little (Little’s law)
2.2.3. Phân bốmũvà tiến trình Markov (Markovian process)
2.2.4. Các kết quảtính toán của hàng đợi M/G/1
2.2.5. Các kết quảtính toán của hàng đợi M/M/1
2.2.6. Các kết quảtính toán của hàng đợi M/D/1
2.3. Phân loại các cơchế điểu khiển truy nhập
2.3.1. Cơchếdành sẵn kênh truyền với kỹthuật điều khiển tập trung
(Centralized Reservation Techniques)
− Nguyên tắc chung – Phương pháp hỏi vòng (polling)
− Phương pháp hỏi vòng tập trung (Roll Call Polling)
− Phương pháp hỏi vòng bán tập trung (Hub Polling)
2.3.2. Cơchếdành sẵn kênh truyền với kỹthuật điều khiển truy nhập
phân tán (Distributed Reservation Techniques)
− Mạng Token Ring: nguyên tắc chung, Token Ring with early token release,
đánh giá ưu nhược điểm trong các phương pháp giải phóng thẻbài.
− Một sốthí dụkhác vềkỹthuật điều khiển truy nhập phân tán: Mạng Token Bus
(theo chuẩn IEEE 802.4), mạng Slotted Ring, mạng Buffer Insertion Ring
2.3.3. Cơchếtruy nhập ngẫu nhiên (Random Access Techniques)
− Giới thiệu chung vềcơchếtruy nhập ngẫu nhiên (chi tiết vềcác cơchếtruy
nhập ngẫu nhiên sẽ được trình bày trong 2.4)
2.4. Các cơchếtruy nhập ngẫu nhiên
2.4.1. Mạng ALOHA
− Nguyên tắc chung
Vấn đềva đập (collision) trong mạng truy nhập ngẫu nhiên
− Đánh giá hiệu năng hoạt động
Thông lượng tối đa của ALOHA
Trễtruyền trung bình (có tính trường hợp xảy ra va đập)
2.4.2. Mạng Slotted ALOHA
− Nguyên tắc chung
− Đánh giá hiệu năng hoạt động
Thông lượng tối đa của ALOHA
Trễtruyền trung bình (có tính trường hợp xảy ra va đập)
2.4.3. Cơchếcảm nhận sóng mang (carrier sense techniques) trong mạng
truy nhập ngẫu nhiên
− Khái niệm đa truy nhập cảm nhận sóng mang CSMA (carrier sense multiple
access)
Cơchếnon-persistent CSMA
Cơchếp-persistent và 1-persistent CSMA
− CSMA với cơchếphát hiện va đập (collision detection) – CSMA/CD
Cơchếphát hiện và khắc phục va đập
Thuật toán backoff trong CSMA/CD
Đánh giá thông lượng của CSMA/CD
So sánh hiệu năng của các phương pháp truy nhập ngẫu nhiên
− Giới thiệu vềchuẩn Ethernet IEEE 802.3
Cấu trúc khung 802.3
2.4.4. Mạng LAN không dây và chuẩn IEEE 802.11
− Các vấn đềcần xem xét trong môi trường truyền dẫn vô tuyến: suy giảm, flat
fading và frequency selective fading, nhiễu giao thoa giữa các ký hiệu. Hiệu ứng đa
đường (ISI). Hiện tương shadow fading. Trễtruyền.
− Lớp vật lý của WLAN: CDMA (DSSS và FHSS), hồng ngoại
− Đa truy nhập sửdụng sóng mang với cơchếtránh va đập (CSMA/CA)
− Dải phổcủa WLAN theo chuẩn 802.11a/b/g
2.5. Giao thức ởmức liên kết dữliệu
2.5.1. Các chức năng cơbản của giao thức lớp liên kết dữliệu
2.5.2. Giao thức HDLC (High Data Link Control)
− Cấu trúc khung LLC
− Các chức năng cơbản
2.5.3. Giao thức LLC (Logical Link Control)
− Cấu trúc khung LLC
− Các chức năng cơbản
Đánh địa chỉkhung
Truyền thông tin
Đánh sốthứtự
Điều khiển lỗi
2.6. Bài tập
Chương 3. Kết nối mạng ởlớp 2
3.1. Kết nối mạng lớp 2
3.1.1. Địa chỉlớp 2
− Khái niệm địa chỉMAC
3.1.2. Một sốtính chất của địa chỉMAC
− Thích hợp trong môi trường quảng bá (broadcast domain)
− Địa chỉ đơn hướng (unicast address)
− Địa chỉ đa hướng (multicast address)
− Địa chỉquảng bá (broadcast address)
3.1.3. Tại sao phải kết nối mạng lớp 2?
− Hạn chếvề độdài kênh truyền tối đa
− Hạn chếvềsốtrạm
− Hạn chếvềtải
3.1.4. Khái niệm cầu nối (bridge)
3.2. Transparent bridge
3.2.1. No-frills bridge
3.2.2. Learning bridge
3.2.3. Thuật toán cây spanning
3.3. Source routing bridge
3.3.1. Pure source routing bridge
− Nguyên tắc chung
− Thuật toán
3.3.2. SR-TB (Source routing to transparent bridging)
− Nguyên tắc chung
− Thuật toán
3.4. So sánh transparent bridge và source routing
3.5. Bài tập
Chương 4. Kết nối mạng Internet (24
tiết)
4.1. Giới thiệu
4.1.1. Tại sao phải kết nối mạng lớp 3?
− Một sốnhược điểm của kết nối mạng lớp 2
− Các yêu cầu khi kết nối mạng lớp 3
4.1.2. Định nghĩa và giới thiệu lịch sửphát triển của mạng Internet
− Định nghĩa
− Lịch sửphát triển mạng Internet
4.2. Khái niệm kết nối mạng lớp 3 và mô hình kiến trúc
của Internet
4.2.1. Các thuộc tính của Internet
4.2.2. Mô hình kiến trúc
4.2.3. Bộ định tuyến IP (IP router) - Kết nối mạng thông qua bộ định
tuyến
4.3. Cấu trúc phân lớp của địa chỉIP
4.3.1. Cấu trúc và sơ đồphân lớp địa chỉIP
4.3.2. Các kiểu địa chỉcủa IP
− Địa chỉlocalhost
− Địa chỉ đơn hướng (unicast address)
− Địa chỉ đa hướng (multicast address)
− Địa chỉquảng bá (broadcast address)
− Một sốnhược điểm của địa chỉIP
4.3.3. Khái niệm subnet và supernet
− Subnetting
− Supernetting và CIDR (Classless Interdomain Routing)
− Subnetmask
4.3.4. Một sốthí dụ
4.4. Mối liên hệgiữa địa chỉlớp 2 và địa chỉlớp 3
4.4.1. Ánh xạtừ địa chỉInternet vào địa chỉMAC – Giao thức phân giải
địa chỉARP (Address Resolution Protocol)
4.4.2. Định địa chỉIP tại thời điểm khởi động – Giao thức phân giải địa
chỉngược RARP (Reverse Address Resolution Protocol)
4.5. BOOTSTRAP và DHCP
4.5.1. Nhược điểm của RARP
4.5.2. Giới thiệu vềBOOTSTRAP
4.5.3. Tại sao phải đặt cấu hình động?
4.5.4. Gán địa chỉIP động
4.5.5. DHCP (Dynamic Host Configuration Protocol)
4.6. Giao thức IP (Internet Protocol)
4.6.1. Đặc điểm chung của IP
− Mục đích chính khi xây dựng IP
− Mô hình datagram dựa trên kết nối không liên kết (connectionless)
4.6.2. Cấu trúc gói IP và chức năng các trường
− Cấu trúc gói
− Chức năng các trường: TOS, ID, TTL, OPTIONS .v.v.
− Một sốgiá trịtrường PROTOCOL mặc định
− Đóng gói IP vào khung lớp 2, các vấn đềliên quan đến MTU .v.v.
4.7. ICMP (Internet Control Message Protocol)
− Giới thiệu các chức năng của ICMP
− Cấu trúc gói ICMP
4.8. Tên và địa chỉ
4.8.1. Ánh xạgiữa tên và địa chỉIP
4.8.2. Tên phẳng (flat name) và tên có cấu trúc (hierarchical name)
4.8.3. Internet Domain Name
4.8.4. Giới thiệu hệthống DNS (Domain Name System) và việc phân giải
địa chỉdựa vào tên
4.9. Tổng quan về định tuyến
4.9.1. Các phương thức gửi gói qua mạng
− Gửi gói trực tiếp (direct delivery)
− Gửi gói gián tiếp (indirect delivery)
4.9.2. Định tuyến qua mạng Internet
− Autonomous system
− Mang lõi (core system) và mạng ngang hàng (peer system)
− Khái niệm bảng định tuyến (routing table)
− Phương pháp định tuyến từng chặng (next-hop routing)
− Tuyến và bộ định tuyến mặc định (default routes and default routers)
4.10. Các mô hình định tuyến theo vector khoảng
cách (distance vector routing)
Chú ý: Phần này chỉtập trung vào các giao thức định tuyến theo phương pháp
distance vector, lý thuyết vềdistance vector routing đã được trình bày kỹtrong
môn Cơsởmạng thông tin (3.517)
4.10.1. Nhắc lại thuật toán định đường Bellman-Ford
4.10.2. Định tuyến tĩnh và định tuyến động
4.10.3. RIP (Routing Information Protocol)
4.11. Các mô hình định tuyến theo đường ngắn nhất
(shostest path routing)
Chú ý: Phần này chỉtập trung vào các giao thức định tuyến theo phương pháp
shortest path, lý thuyết vềshortest path routing đã được trình bày kỹtrong môn
Cơsởmạng thông tin (3.517)
4.11.1. Nhắc lại thuật toán định đường Dijkstra
4.11.2. OSPF
4.12. UDP (User Datagram Protocol)
4.12.1. Tại sao phải xây dựng một giao thức trao đổi dữliệu không liên kết
ởlớp 4?
4.12.2. Cấu trúc gói UDP
4.12.3. Các chức năng của UDP
4.12.4. Một số địa chỉcổng UDP mặc định
4.13. TCP (Transmission Control Protocol)
4.13.1. Cơchếtrao đổi sốliệu tin cậy trong mạng Internet – TCP
4.13.2. Cấu trúc gói TCP
4.13.3. Các chức năng của TCP
− Cơchế điều khiển luồng
− Đánh sốthứtựgói
− Quá trình timeout và gửi lại gói
4.13.4. Một số địa chỉcổng TCP mặc định
4.14. Bài tập
ave any number of members, even zero). • A transient group, on the other hand, is assigned an address dynamically when the group is created, at the request of a host. A transient group ceases to exist, and its address becomes eligible for reassignment, when its membership drops to zero 6Khái niệm “group address” • Group address là địa chỉ của multicast group, và nó là multicast IP address thuộc lớp D trong không gian địa chỉ IP từ 224.0.0.0Æ239.255.255.255 • Group address chỉ có thể là địa chỉ đích chứ không thể là địa chỉ nguồn của gói tin Multicast. Địa chỉ nguồn bao giờ cũng là địa chỉ unicast. Cho nên group address con được gọi là group destination address (GDA) Group address(cont) • Each GDA there is an associated with a MAC address .This MAC address is formed by 01-00-5e, followed by the last 23 bits of the GDA translated into hex. • Some Multicast IP addresses are reserved for special use, as shown below 224.0.0.1 - All multicast-capable hosts 224.0.0.2 - All multicast-capable routers. 224.0.0.5 and 224.0.0.6 are used by Open Shortest Path First (OSPF) • In general, addresses from 224.0.0.1 to 224.0.0.255 are reserved and used by various protocols . 7IGMP protocol • IGMP is a standard defined in RFC1112 for IGMPv1, in RFC2236 for IGMPv2 and in RFC3376 for IGMPv3. • IGMP specifies how a host can register a router in order to receive specific multicast traffic. • Like ICMP, IGMP is a integral part of IP. It is required to be implemented by all hosts conforming to level 2 of the IP multicasting specification. IGMP massege • IGMP message formats are encapsulated in an IP datagram which contain a time to live (TTL) field. The default is to set the TTL field to 1 which means the datagram will not leave its subnetwork. An application can increase its TTL field in a message to locate a server distance in terms of hops. • The IGMP message is 8 bytes 1. Bits 0 to 3 - IGMP version number 2. Bits 4 to 7 - IGMP type. 1=query sent by a multicast router. 2 is a response sent by a host. 3. Bits 8 to 15 - unused 4. Bits 16 to 31 - Checksum 5. The last 4 bytes - 32 bit group address which is the same as the class D IP address 8Five major host subcription protocols • IGMPv1 • IGMPv2 • IGMPv3 • CGMP • IGMP Snooping IGMPv1 • IGMPv1 là phiên bản IGMP đầu tiên được định nghĩa bởi RFC 1112. • Mục đích chính của IPMPv1 là cho phép 1 host tham gia vào 1 nhóm. Sau khi trở thành member của nhóm nó có khả năng nhận được các bản tin multicast gửi tới cho nhóm đó. • Có 3 quá trình được sử dụng trong version1 của IGMP 1. Query 2. Join 3. Leave 9Query process Join process 10 Cấu trúc khung IGMPv1 Ý nghĩa các trường • Version.4bit :set to 1 • Type.4 bit : loại 1 Host Membership Query • loại 2 Host Membership Report • Unused. 8 bits. Cleared to zero when the IGMP packet is sent and ignored when received IGMP • Checksum. 16 bits. • Group Address. 32 bits. In a Host Membership Query message, the group address field is zeroed when sent, ignored when received. In a Host Membership Report message, the group address field holds the IP host group address of the group being reported. 11 IGMPv2 • IGMPv2 cũng có các chức năng tương tự như IGMPv1 nhưng có thêm 1 số đặc tính mới: 9 Leave Process trong v2 tránh được thời gian timeout quá dài thường thấy trong v1 9V2 có 2 dạng query đó là: General và Group- Specific 9 Lưu lượng mạng giảm xuống do cơ thế timing mới o IGMPv2 được định nghĩa bởi RFC 2236 Cấu trúc khung IGMPv2 12 Ý nghĩa các trường • Type. 8 bits 0x12 IGMPv1 Membership Report. 0x16IGMPv2 Membership Report. 0x17IGMPv2 Leave Group. 0x11 Group Membership Query, general or group-specific. 0x22IGMPv3 Membership Report • Max Response Time. 8 bits used only in Membership Query messages It specifies the maximum allowed time before sending a responding report in units of 1/10 second. • IGMP Checksum. 16 bits • Group Address. 32 bits. In a Membership Query message, this field is set to zero when sending a General Query and set to the group address being queried when sending a Group- Specific Query. In a Membership Report or Leave Group message, this field holds the IP multicast group address of the group being reported or left. ICMP 13 Internet Control Message Protocol(ICMP) - ICMP là một giao thức trong bộ giao thức TCP/IP giúp giải quyết những giới hạn cơ bản của IP - ICMP cung cấp rất nhiều thông tin về tình trạng hoạt động của mạng và do đó giúp cho việc điều khiển hoạt động của mạng TCP/IP ICMP Packet Bản tin ICMP được đóng gói và truyền trong gói tin IP giống như tất cả các loại dữ liệu khác. 14 Header of ICMP Packet ’s Field • Type(1 byte): cho biết bản tin ICMP hiện hành thuộc loại nào. • Code(1 byte): 1 vài loại bản tin ICMP sử dụng trường này để chia nhỏ ra các trường hợp cụ thể hơn. • Checksum(2 bytes): giống như trường Checksum của IP header, dùng để kiểm tra cho phần Header. • Variable Part of Header(4 bytes): tùy thuộc vào loại bản tin ICMP ICMP Types General 15 ICMP TYPE NUMBERS (last updated 25 July 2006) [RFC1256]Router Solicitation10 [RFC1256]Router Advertisement9 [RFC792]Echo8 [JBP]Unassigned7 [JBP]Alternate Host Address6 [RFC792]Redirect5 [RFC792]Source Quench4 [RFC792]Destination Unreachable3 [JBP]Unassigned2 [JBP]Unassigned1 [RFC792]Echo Reply0 ReferenceNameType ICMP TYPE NUMBERS (last updated 25 July 2006) (cont) [ZSu]Reserved (for Robustness Experiment)20-29 [Solo]Reserved (for Security)19 [RFC950]Address Mask Reply18 [RFC950]Address Mask Request17 [RFC792]Information Reply16 [RFC792]Information Request15 [RFC792]Timestamp Reply14 [RFC792]Timestamp13 [RFC792]Parameter Problem12 [RFC792]Time Exceeded11 ReferenceNameType 16 ICMP TYPE NUMBERS (last updated 25 July 2006) (cont) [RFC2521]Photuris40 [Markson]SKIP39 [RFC1788]Domain Name Reply38 [RFC1788]Domain Name Request37 [Bill Simpson]Mobile Registration Reply36 [Bill Simpson]Mobile Registration Request35 [Bill Simpson]IPv6 I-Am-Here34 [Bill Simpson]IPv6 Where-Are-You33 [David Johnson]Mobile Host Redirect 32 [RFC1475]Datagram Conversion Error31 [RFC1393]Traceroute30 ReferenceNameType ICMP TYPE NUMBERS (last updated 25 July 2006) (cont) [JBP]Reserved42-255 [RFC4065]ICMP messages utilized by experimental mobility protocols such as Seamoby41 ReferenceNameType 17 ICMP Types Detail ICMP Message Type Type Value 18 ICMP Message type Bản tin ICMP có thể nhóm thành 2 loại chính : ¾Bản tin ICMP giúp phát hiện lỗi và thông báo lỗi(error message) ¾Bản tin ICMP giúp cho quá trình điều khiển(control message) Error reporting and error correction Khi lỗi xảy ra với gói tin, ICMP gửi thông tin về nơi gửi 19 Destination Unreachable Message Destination Unreachable Message •Khi một bản tin không thể đưa tới trạm đích thì một bản tin ICMP Destination Unreachable được gửi trở lại máy gửi để thông báo lỗi. •Có rất nhiều nguyên nhân dẫn đến lỗi này, trong các bản tin ICMP Destination Unreachable nguyên nhân cụ thể được xác định nhờ trường CODE. 20 Destination Unreachable Message Destination Unreachable Message Common ICMP Unreachable Codes 21 Using ping to test destination reachability Echo messages Bản tin ICMP Echo Request và ICMP Echo Reply được gửi và nhận thông qua lệnh Ping Request:0 Reply :8 Code= 0 for both 22 Echo messages • Tất cả các hệ điều hành hỗ trợ giao thức TCP/IP đều chứa chương trình Ping. • Người dùng gửi một gói tin ICMP Echo Request và node đích buộc phải trả lời bằng một gói tin ICMP Echo Reply. • Đây là một công cụ rất đơn giản để kiểm tra khả năng kết nối của một node bất kỳ trên mạng. Echo messages •Tất cả các dữ liệu được gửi đi trong Echo Request đều phải được gửi trả lại trong Echo Reply. • Trường Identifier trong ICMP Packet Header dùng để “cặp đôi” Request và Reply do đó chúng ta có thể xác định Request tương ứng của Reply nhận được 23 Time Exceeded Message Loại này được chia ra hai trường hợp sau: Code = 0: báo cho máy gửi biết trường TTL trong IP Header bị giảm về 0 khi đến Router và gói tin đó bị loại khỏi mạng. Code = 1:báo rằng máy nhận không thể hoàn thành gói tin IP từ các phân mảnh (trong trường hợp gói tin được chia thành nhiều mảnh) trong thời gian cho phép. Time Exceeded Message 24 Time Exceeded Message •ICMP Time Exceeded Packet với Code = 0 được dùng trong chương trình Traceroute (UNIX) và Tracert(Microsoft). •Cả hai chương trình này hoạt động trên cùng một nguyên lý nhằm mục đích thăm dò các router trên đường truyền. Điểm khác nhau cơ bản là ở loại gói tin được gửi đi để thăm dò. Time Exceeded Message Tracer Command 25 Time Exceeded Message Traceroute Command Parameter Problem Message Một thiết bị khi xử lý gói tin có thể sẽ không forward gói tin ấy đi tiếp nếu có lỗi xảy ra trong phần IP Header của nó. Khi đó một ICMP(type12) Parameter Problem Message sẽ được gửi về cho trạm gốc để thông báo lỗi. 26 Parameter Problem Message Có 3 trường hợp xảy ra lỗi như trên ứng với 3 giá trị của trường Code: ¾Code = 0: Pointer indicates the error. ¾Code = 1: Missing a required option. ¾Code = 2: Bad Length. Introduction to control messages • Không giống như Error Message, Control Message không phải là kết quả của việc bị mất hay lỗi gói tin khi truyền. • Chúng được dùng để cung cấp thông tin về mạng cho các host như xảy ra tắc nghẽn mạng hoặc xuất hiện một gateway tốt hơn trên mạng. 27 ICMP Redirection • ICMP Rediretion là một phần rất quan trọng giúp cho quá trình định tuyến trong mạng IP. • ICMP Redirect/Change Message được router là default gateway của một host gửi cho host đó khi phát hiện ra có một router “tốt hơn”. ICMP Redirection 28 Redirect/Change Request Message TimeStamp and Timestamp Reply Message 29 Information Request and Information Reply Message
File đính kèm:
- Giáo trình Mạng máy tính - Đại học Bách Khoa Hà Nội.pdf