1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn giao thức TCP IP

37 195 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

LI M U Mặc dù nhiều giao thức đợc đa nhằm áp dụng cho internet, nhng giao thức bật đợc sử dụng rộng rãi cho liên mạng Bộ giao thức giao thức internet TCP/IP (the TCP/IP Internet Protocols); nhiều chuyên gia gọi đơn giản TCP/IP TCP/IP giao thức đợc phát triển để sử dụng cho internet.TCP/IP bắt đầu đợc nghiên cứu vào năm 1970, xấp xỉ thời gian với mạng cục đợc phát triển Quân đội Mỹ đầu t nhiều công sức vào việc nghiên cứu giao thức TCP/IP liên mạng thông qua tổ chức ARPA Quân đội Mỹ tổ chức mà có nhiều mạng khác Do họ tổ chức nhận nhu cầu cần thiết có dịch vụ toàn mạng Vào năm 1980, tổ chức khoa học quốc gia vài quan phủ Mỹ tiếp tục nghiên cứu phát triển giao thức TCP/IP liên mạng diện rộng nhằm thử ngiệm giao thức naỳ Việc nghiên cứu internet giao thức TCP/IP đạt đợc kết đáng kể Liên mạng trở thành ý tởng quan trọng hệ thống mạng đại Thực tế, công nghệ mạng tạo cách mạng truyền thông máy tính Nhiều tổ chức lớn sử dụng internet nh hệ thống truyền thông máy tính họ Các tổ chức nhỏ cá nhân bắt đầu tiến hành nh Hơn nữa, với việc liên kết internet riêng, công nghệ TCP/IP tạo mạng Internet toàn cầu có tới triệu máy tính trờng học, tổ chức thơng mại tổ chức quân đội, phủ khắp nơi 82 nớc toàn thể giới Thực tế chứng minh giao thức TCP/IP có ý nghĩa quan trọng có ứng dụng lớn thời đại ngày nay_thời đại internet Do hạn chế mặt thời gian nên phần tiểu luận viết giao thức TCP/IP em trình bày số vấn đề khái quát giao thức TCP/IP Phần I Sơ lợc giao thức TCP/IP I Các lớp giao thức TCP/IP Mô hình tham chiếu lớp OSI đợc phát minh trớc có internet Do vậu mô hình có lớp không phù hợp với giao thức internet Hơn nữa, mô hình dành toàn lớp cho giao thức mà điểu trở nên quan trọng hệ thống máy tính thay đổi từ hệ thống phân chi thời gian lớn thành máy trạm riêng Do nhà nghiên cứu mà phát triển giao thức TCP/IP phát minh mô hình lớp Mô hình phân lớp TCP/IP hay gọi mô hình phân lớp Internet hay mô hình tham chiếu Internet (Internet Reference Model) có lớp nh hình sau ứng dụng Truyền tải Liên mạng Nối ghép mạng Vật lý Lớp Lớp Lớp Lớp Lớp Hình1.Năm lớp mô hình tham chiếu TCP/IP lớp mô hình tham chiếu TCP/IP tơng ứng với nhiều lớp mô hình tham chiếu OSI Lớp 1: vật lý Môcứng hình mạng giao thức TCP/IP vành so sánh Lớp tơng ứngHình với phần giống lớp 1với củaOSI mô hình tham chiếu lớp OSI Lớp 2: Nối ghép mạng Lớp cách thức liệu đợc tổ chức frame máy tính truyền frame nh nào, tơng tự nh lớp mô hình tham chiếu OSI Lớp 3: Internet Lớp định dạng gói tin đợc truyền qua internet chế sử dụng để truyền tiếp gói tin từ máy tính thông qua nhiều router đến máy tính đích Lớp 4: truyền tải Lớp giống nh lớp mô hình OSI, làm để đảm bảo độ tin cậy truyền tin Lớp 5: ứng dụng Lớp tơng ứng với lớp lớp mô hình OSI Mỗi giao thức lớp ứng dụng sử dụng internet nh II Máy chủ, router lớp giao thức TCP/IP định nghĩa thuật ngữ máy chủ (host computer) để hệ thống máy tính mà đợc nối với internet có chạy ứng dụng Host computer máy tính cá nhân nhỏ nhng máy mainframe lớn Hơn nữa, CPU máy chủ nhanh hay chậm, nhớ lớn hay bé mạng mà có máy chủ nối kết có tốc độ nhanh hay chậm Giao thức TCP/IP cho phép cặp máy chủ giao tiếp với bất chấp khác phần cứng Cả máy chủ router cần đến phần mềm giao thức TCP/IP Tuy nhiên, router không sử dụng giao thức tất lớp Đặc biệt router không cần giao thức lớp cho ứng dụng nh việc truyền file router không chạy ứng dụng Phần II Địa IP I IP_ Địa giao thức internet Mục đích liên mạng tạo hệ thống truyền thông đồng Để đạt đợc điều này, phần mềm giao thức internet phải ẩn chi tiết mạng vật lý đa đặc điểm thuận lợi mạng ảo Sự hoạt động mạng ảo giống nh mạng khác, cho phép máy tính truyền nhận gói tin Sự khác biệt internet mạng vật lý internet mạng hoàn toàn trừu t ợng đợc hình dung ngời thiết kế đợc tạo phần mềm Những ngời thiết kế tự lựa chọn địa chỉ, định dạng gói tin, kỹ thuật truyền tin độc lập với phần cứng vật lý cụ thể Địa thành phần khó mạng internet Để tạo đợc hệ thống đồng bộ, tất máy tính phải có chế đánh địa đồng Nhng địa vật lý mạng dùng đợc mạng internet gồm nhiều công nghệ mạng khác công nghệ có định dạng địa riêng Do vậy, địa hai công nghệ mạng khác không tơng thích với chúng khác kích thớc định dạng Để đảm bảo đồng địa tất host, phần mềm giao thức định nghĩa chế đánh địa mà hoàn toàn độc lập với địa phần cứng Mặc dù chế đánh địa cho internet trừu tợng tạo phần mềm, nhng địa giao thức sử dụng đến đích mạng ảo giống nh cách mà địa phần cứng sử dụng mạng vật lý Để truyền gói tin qua mạng internet, máy gửi để địa giao thức máy đích gói tin truyền gói tin đến phần mềm giao thức để truyền Phần mềm sử dụng địa giao thức đích kho chuyển tiếp gói tin qua mạng internet đến máy tính đích Để tạo địa đồng mạng internet, phần mềm giao thức định nghĩa chế đánh địa trừu tợng mà host đợc thiết lập địa Ngời sử dụng , chơng trình ứng dụng lớp phần mềm giao thức cao sử dụng địa trừu tợng để giao tiếp với II Cơ chế đánh địa IP Trong stack giao thức TCP/IP, địa đợc quy định giao thức liên mạng (IP internet protocol) Chuẩn IP quy định host đợc thiết lập số 32 bit gọi địa giao thức liên mạng host, hay thờng đợc viết tắt địa IP địa internet Mỗi gói tin gửi qua mạng có chứa địa IP 32 bit máy gửi địa máy nhận Do vậy, để truyền thông tin qua mạng TCP/IP, máy tính cần biết địa IP máy tính cần truyền đến Phân cấp địa IP Mỗi địa IP 32 bit đợc chia thành hai phần: phần đầu phần cuối; phân cấp làm hai mức để dễ dàng cho việc định tuyến Phần đầu địa xác định mạng vật lý mà máy tính nối vào, phần sau xác định địa máy tính nối mạng Do vậy, mạng vật lý liên mạng đợc thiết lập giá trị gọi số mạng (network number) Số mạng xuất phần đầu địa máy tính nối mạng Hơn nữa, máy tính mạng vật lý cụ thể đợc thiết lập giá trị phần sau địa Mặc dù hai mạng có giá trị network number hai máy tính mạng có giá trị phần sau, nhng giá trị phần sau sử dụng nhiều mạng khác Ví dụ, liên mạng gồn có mạng, chúng đánh số mạng 1, Ba máy tính nối với mạng có giá trị phần sau 1, 5, máy tính nối mạng thiết lập giá trị phần sau 1, Sự phần cấp địa IP phải đảm bảo hai tính chất quan trọng sau: Mỗi máy tính có giá trị địa Mặc dù việc thiết lập giá trị network number phải đợc phối hợp toàn mạng, nhng phần sau địa thiết lập cách cục Tính chất thứ đợc đảm bảo địa đầy đủ có phần đầu phần sau, chúng đợc thiết lập đảm bảo tính Nếu hai máy tính nối với hai mạng vật lý khác nhau, địa chúng khác phần đầu Nếu hai máy tính nối với mạng vật lý địa chúng khác phần sau Các lớp địa IP Mỗi lựa chọn việc thiết kế địa IP việc phân chia địa thành hai phần, nhà thiết kế phải định bit dành cho phần Phần đầu cần sô bit đủ để tạo số mạng để thiết lập cho mạng vật lý thuộc liên mạng Phần sau cần số bit đủ để đảm bảo máy tính nối với mạng vật lý có giá trị phần sau Không phải dễ dàng để đa chọn lựa thêm bit vào phần đồng nghĩa với việc giảm bit phần Việc chọn lựa phần đầu lớn thích hợp cho nhiều mạng nhng điều lại giới hạn kích thớc mạng; chọn phần sau lớn mạng vật lý chứa nhiều máy tính nhng lại bị giới hạn tổng số mạng Bởi liên mạng có thẻ có công nghệ mạng bât kỳ nên liên mạng có số mạng lớn liên mạng khác lại có nhiều mạng nhỏ Quan trọng hơn, liên mạng kết hợp mạng lớn mạng nhỏ Kết ngời thiết kế phải chọn lựa chế đánh địa cho thoả mãn đợc thích hợp với mạng lớn mạng nhỏ Cơ chế chia địa IP thành lớp bản, lớp có kích thớc phần khác Bốn bit đầu địa định địa thuộc lớp nào, phần lại địa đợc chia thành phần nh Hình dới minh hoạ lớp địa chỉ, bit đầu để xác định lớp phân chia phần đầu phần sau Các số quy ớc việc sử dụng số bit giao thức TCP/IP từ trái qua phải số bit bits Class A Class B 01234 prefix 10 16 prefix suffix 24 suffix 31 Class C 110 prefix Class D 1110 Multicast address Class E 1111 Reserved for future use suffix lớp địa IP địa để thiết lập cho máy thuộc lớp A,B C Lớp A, B C gọi lớp chúng sử dụng cho địa host Lớp D sử dụng cho multicast để dùng cho tập máy tính Để sử dụng địa multicast, tập máy trạm phải thoả thuận dùng chung địa multicast Mỗi nhóm multicast đợc thiết lập, gói tin chuyên đến địa multicast đợc chuyển đến tất máy trạm thuộc nhóm multicast Nh hình vẽ ta thấy, lớp sử dụng đơn vị byte để phân chia địa thành phần đầu phần sau Lớp A xác định ranh giới byte byte thứ hai Lớp B xác định ranh giới byte thứ hai byte thứ ba, lớp C ranh giới byte thứ thứ Tính toán lớp địa Phần mềm IP tính lớp địa đích nhận đợc gói tin Vì tính toán đợc lặp lại thờng xuyên, nên phải hiệu Địa Ip gọi địa tự nhận dạng lớp địa tính đợc từ thân địa Một phần nguyên nhân việc sử dụng bit đầu để biểu thị lớp địa thay sử dụng khoảng giá trị xuất phát từ việc nghiên cứu tính toán: sử dụng bit làm giảm thời gian tính toán Đặc biệt, vài máy tính kiểm tra bit nhanh việc so sánh số nguyên Ví dụ, máy tính có lệnh logic and shift tìm số, bit đầu đợc lấy sử dụng bảng số để xác định lớp địa Hình sau minh hoạ nội dung bảng sử dụng để tính toán bit đầu địa 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Chỉ số (hệ thập phân) 10 11 12 13 14 15 Lớp địa A A A A A A A A B B B B C C D E Hình 3.Bảng sử dụng để tính lớp địa bit địa đợc lấy để sử dụng nh số bảng Nh bảng ta thấy, tổ hợp bắt đầu số thuộc lớp A tổ hợp bắt đầu 10 thuộc lớp B, tổ hợp bắt đầu 110 thuộc lớp C Một địa bắt đầu 111 thuộc lớp D cuối địa bắt đầu 1111 thuộc lớp E lớp để dự phòng cha sử dụng đến Ký hiệu thập phân chấm Mặc dù địa IP số 32 bit, ngời sử dụng đọc nhập giá trị vào dạng nhị phân thay vào đó, giao tiếp với ngời sử dụng, phần mềm sử dụng dạng địa khác thuận tiện Gọi dạng ký hiệu thập phân chấm (dotted decimal notation), dạng gom bit số 32 bit thành giá trị thập phân dùng dấu chấm để phân chia thành phần Hình sau minh hoạ ví dụ số nhị phân và dạng thập phân chấm tơng đơng Số nhị phân 32 bit 10000001 00110100 00000110 00000000 11000000 00000101 00110000 00000011 00001010 00000010 00000000 00100101 10000000 00001010 00000010 00000011 10000000 10000000 11111111 00000000 Thập phân chấm tơng đơng 129.52.6.0 192.5.48.3 10.2.0.37 128.10.2.3 128.128.255.0 Hình ví dụ số 32 bit nhị phân dạng thập phân chấm tơng đơng Mỗi byte đợc viết thành số thập phân dùng dấu chấm để phân tách byte Thập phân chấm coi byte số nguyên nhị phân không dấu Nh ví dụ cuối cùng, giá trị nhỏ xuất toàn bit giá trị lớn 255 toàn bit Do vậy, địa thập phân chấm nằm khoảng từ 0.0.0.0 đến 255.255.255.255 Các lớp ký hiệu thập phân chấm Dạng thập phân chấm làm việc tốt với địa IP phân chia phần địa theo byte Trong lớp A, byte cuối tơng ứng với địa phần sau máy trạm tơng tự nh vậy, địa lớp B có byte cho địa phần sau máy trạm lớp C có byte Nhng không may việc dùng dạng thập phân chấm không chia thành bit để cót hể thấy rõ lớp địa chỉ, lớp phải nhận biết từ giá trị thập phân địa Hình sau khoảng giá trị thập phân cho lớp Lớp A B C D E Khoảng giá trị đến 127 127 đến 191 192 đến 223 224 đến 239 240 đến 255 Hình khoảng giá trị thập phân thuộc byte lớp địa Sự phân chia khoảng địa Cơ chế lớp địa IP không chia địa 32 bit thành khoảng lớp, lớp chứa số mạng Ví dụ, nửa số địa IP (những địa mà có bit đầu 0) thuộc lớp A Lớp A chứa 128 mạng bit đầu địa lớp A phần đầu địa byte Do có bit lại sử dụng để đánh số mạng Hình sau tóm tắt số mạng lớn lớp số máy trạm lớn mạng Lớp địa Số bit thuộc Số mạng lớn Số bit phần đầu sau A B C 14 21 128 16384 2097152 24 16 phần Số máy trạm lớn mạng 16777216 65536 256 Hình 6: số mạng lớn máy trạm mạng với lớp địa IP Nh bảng ta thấy, số bit cho phần đầu phần cuối lớp địa định số giá trị có để thiết lập Ví dụ, phần đầu n bit cho phép có n số mạng nhất, phần cuối có n bit có 2n số máy trạm cho mạng Nơi quản lý địa Trên toàn mạng, mạng phải có giá trị địa Đối với mạng kết nối Internet toàn cầu, tổ chức lấy số mạng từ công ty cung cấp dịch vụ kết nối Internet Các công ty gọi nhà cung cấp dịch vụ Internet (Internet Service Provider - ISP) Các nhà cung cấp dịch vụ Internet phối hợp với tổ chức trung tâm nơi quản lý đánh số điạ Internet (internet Assigned Number Authority), để đảm bảo số cấp cho mạng toàn mạng Với liên mạng riêng biệt, việc chọn số cho mạng đợc định tổ chức Để đảm bảo phần đầu địa nhất, nhóm xây dựng liên mạng định việc phối hợp thiết lập giá trị Thông thờng, ngời quản trị mạng thiết lập phần đầu địa cho tất mạng liên mạng công ty để đảm bảo giá trị không bị trùng III Ví dụ cách đánh địa Một ví dụ làm sáng tỏ ý tởng giải thích việc thiết lập địa thực tế Hãy xem xét tổ chức chọn lựa để xây dựng liên mạng TCP/IP gồm có mạng vật lý Tổ chức phải mua router để nối kết mạng đó, sau phải thiết lập địa IP Để bắt đầu, tổ chức chọn lựa giá trị cho mạng để làm phần đầu địa Khi thiết lập giá trị cho phần đầu địa chỉ, giá trị số đợc chọn lựa theo lớp A, B C tuỳ vào kích thớc mạng vật lý Thông thờng mạng thiết lập địa thuộc lớp C lớp B thực cần thiết lớp A đợc lựa chọn mạng chứa tới 65536 máy trạm Đối với mạng kết nối Internet toàn cầu, nhà cung cấp dịch vụ thực việc chọn lựa Đối với liên mạng lẻ, ngời quản trị mạng lựa chọn lớp địa Hãy để ý ví dụ liên mạng riêng lẻ nói ngời quản trị mạng ớc tính kích thớc mạng vật lý dùng kích thớc để chọn lựa phần đầu Nếu tổ chức mong muốn mạng nhỏ, hai mạng kích thớc trung bình mạng lớn, ngời quản trị mạng thiết lập phần đầu địa thuộc lớp C (192.5.48), hai mạng có phần đầu địa thuộc lớp B (ví dụ 128.10 128.211), mạng địa phần đầu thuộc lớp A(ví dụ 10) Hình minh hoạ liên mạng với mạng vật lý đợc thiết lập phần đầu địa chỉ, ví dụ địa IP thiết lập cho máy trạm Prefix 128.10 Prefix 128.211 128.10.0.1 128.10.0.2 128.211.6.115 Prefix 10 10.0.0.37 128.211.28.4 Prefix192.5.48 192.5.48.3 10.0.0.49 192.5.48.85 Hình : ví dụ liên mạng riêng lẻ với địa IP thiết lập cho máy trạm Kích thớc đám biểu thị cho mạng vật lý tơng ứng với số máy trạm nối kết vào mạng; kích thớc mạng định lớp địa thiết lập Nh hình vẽ ta thấy, địa IP thiết lập cho máy trạm bắt đầu với phần đầu giá trị mà thiết lập cho mạng vật lý máy trạm Phần sau địa đợc thiết lập ngời quản trị mạng cục lấy giá trị Trong ví dụ, hai máy trạm nối với mạng có giá trị đầu 129.10 có giá trị phần sau Mặc dù nhiều quản trị mạng chọn giá trị phần sau theo thứ tự, nhng địa IP không bắt buộc phải làm nh Sự thiết lập địa ví dụ lấy giá trị phần sau tuỳ ý nh 37 85 IV Địa IP đặc biệt Cùng với việc thiết lập địa cho máy trạm, việc có số địa sử dụng để biểu diễn mạng tập máy tính thuận tiện IP đa tập địa đặc biệt tạo để dự trữ Đó là, địa đặc biệt mà không đ ợc đặt cho máy trạm Trong phần xem xét cú pháp ý nghĩa địa đặc biêt Địa mạng Một nguyên nhân đa dạng địa đặc biệt nhận thấy qua hình sau thuận tiện có địa sử dụng địa phần đầu để biểu diễn địa cho mạng cụ thể IP đa địa máy trạm sử dụng để biểu diễn mạng Do đó, địa 128.211.0,0 biểu diễn mạng mà thiết lập địa lớp B với phần đầu địa 128.211 Địa mạng dùng để đến thân mạng mà máy trạm nối với mạng Do vậy, địa mạng không nên xuất địa đích gói tin Địa quảng bá trực tiếp Đôi khi, thuận tiện gửi gói tin đến tất máy trạm thuộc mạng vật lý Để làm cho việc truyền toàn mạng dễ dàng, IP định nghĩa địa quảng bá trực tiếp (directed broadcast address) cho mạng vật lý Khi gói tin đợc gửi đến địa quảng bá trực tiếp, gói tin đợc truyền qua liên mạng đến đến đợc mạng cần thiết Gói tin sau đợc truyền đến tất máy trạm thuộc mạng Địa quảng bá trực tiếp có dạng phần đầu địa mạng phần sau gồm toàn số Để đảm bảo mạng trực tiếp thực việc quảng bá, IP dự trữ địa máy trạm có chứa toàn bit Ngời quản trị mạng phải không đợc thiết lập địa máy trạm gồm toàn hoặc phần mềm bị hỏng Nếu phần cứng mạng hỗ trợ quảng bá, việc quảng bá trực tiếp đợc thực nhờ phần cứng Trong trờng hợp đó, truyền tin gói tin tới tất máy tính mạng Khi việc quảng bá trực tiếp không đợc thực phần cứng mạng, phần mềm phải thực việc truyền gói tin đến máy trạm mạng Địa quảng bá giới hạn Thuật ngữ quảng bá giới hạn để việc quảng bá thực mạng vật lý; thông tục gọi quảng bá giới hạn với đờng dây đơn (single wire) Quảng bá giới hạn đợc thực trình khởi động máy tính cha biết giá trị số mạng IP dự trữ địa gồm toàn bit để quy định quảng bá giới hạn Do vậy, IP thực gửi gói tin mà có địa gồm toàn bit toàn mạng cục Địa máy tính Một máy tính cần biết địa IP để gửi nhận gói tin truyền liên mạng gói tin cần có địa nguồn đích Bộ giao thức TCP/IP có giao thức cho phép máy tính xác định đợc địa IP máy tính đợc khởi động Thật thú vị giao thức khởi động sử dụng IP để kết nối Khi dùng giao thức khởi động đó, máy tính cung cấp địa IP nguồn xác Để thực đợc điều này, IP dự trữ địa gồm toàn số để địa máy tính Địa lặp quay lại IP định nghĩa địa lặp quay lại đợc sử dụng để kiểm tra ứng dụng mạng ngời lập trình thờng sử dụng kiểm tra lặp quay lại cho việc tìm lỗi ban đầu với ứng dụng mạng vừa đợc viết Để thực kiểm tra lặp quay lại, ngời lập trình cần có hai ứng dụng mà định giao tiếp với qua mạng Mỗi ứng dụng cần có phần mã lệnh thực việc tơng tác với phần mềm giao thức TCP/IP Thay việc phải thực chơng trình máy khác nhau, ngời lập trình chạy hai chơng trình máy tính dẫn chúng thực địa IP lặp quay lại kết nối Khi ứng dụng gửi liệu đến ứng dụng khác, liệu truyền qua ngăn xếp giao thức để đến chơng trình Do vậy, ngời lập trình kiểm tra chơng trình ứng dụng cách nhanh chóng không cần chạy hai máy tính không cần truyền gói tin qua mạng IP dự trữ lớp A với phần đầu địa mạng 127 cho sử dụng với lặp quay lại Địa máy trạm sử dụng với 127 không xác định tất địa máy trạm nh Theo quy ớc ngời lập trình thờng sử dụng địa máy trạm có dạng 127.0.0.1 phổ biến cho lặp quay lại Trong suốt trình kiểm tra lặp quay lại gói tin khỏi máy tính phần mềm IP truyền gói tin từ ứng dụng sang ứng dụng Kết quả, địa lặp quay lại không xuất gói tin truyền qua mạng Tóm tắt địa IP đặc biệt Bảng sau tóm tắt dạng địa đặc biệt Prefix Toàn số Suffix Toàn số Kiểu địa Cho máy tính Giá trị mạng Toàn số Mạng Giá trị mạng Toàn số Quảng bá trực tiếp Toàn số Toàn số Quảng bá giới hạn 127 Bât kỳ Lặp quay lại Mục đích Sử dụng khởi động Xác định mạng Quảng bá mạng xác định Quảng bá mạng cục Kiểm tra Bảng tóm tắt dạng địa đặc biệt Chúng ta nói địa đặc biệt để dự trữ không dùng để thiết lập cho máy trạm Hơn nữa, địa đặc biệt bị giới hạn sử dụng Ví dụ, địa quảng bá không đợc xuất địa nguồn gói tin địa toàn phải không đợc sử dụng sau máy tính thực xong việc khởi động có địa IP Dạng địa quảng bá Berkeley Trờng đại học California Berkeley phát triển phân phối việc bổ sung giao thức TCP/IP nh phần BSD UNIX Sự bổ sung BSD có đặc tính không chuẩn nên ảnh hởng đến việc thực xảy sau Thay việc sử dụng phần sau địa gồm toàn để biểu diễn địa quảng bá trực tiếp, bổ sung Berkeley sử dụng phần sau gồm toàn số Các dạng địa gọi quảng bá berkeley (Berkeley broadcast) Nhiều nhà chế tạo máy tính thực phần mềm TCP/IP họ theo bổ sung Berkeley, số nơi sử dụng quảng bá Berkeley Một vài thực TCP/IP với thông số cấu hình cho phép chọn lựa chuẩn TCP/IP dạng Berkeley; nhiều thực đợc xây dựng để chấp nhận hai dạng địa quảng bá TCP/IP chuẩn địa Berkeley V Router nguyên tắc đánh địa IP Cùng với việc thiết lập địa liên mạng cho máy trạm, giao thức liên mạng quy đinh router cần có địa IP Thực tế router đợc thiết lập hai nhiều địa IP: Một router có nhiều kết nối với mạng vật lý Mỗi địa IP có chứa phần đầu để mạng vật lý Do vậy, địa IP không đủ cho router router nối kết với nhiều mạng Kỹ thuật IP đợc giải thích nguyên lý bản: Một địa IP không xác định máy tính Thay vào đó, địa IP xác định kết nối máy tính mạng máy tính với nhiều kết nối mạng (ví dụ nh router) phải đợc thiết lập kết nối địa IP Hình minh hoạ ý tởng với ví dụ việc thiết lập địa IP cho hai router nối kết mạng 10 ợc truyền tiếp đến đích cuối cùng, tái hợp chúng lại Trong hình vẽ, máy trạm H1 gửi datagram 1500 byte đến máy trạm H2, router R1 chia datagram hai phân đoạn, đợc truyền tiếp đến R2 Router R2 không tái hợp csac phân đoạn mà dùng địa đích phân đoạn để truyền tiếp chúng Máy trạm cuối cùng, H2 tập hợp phân đoạn tái hợp chúng lại để tạo datagram gốc Việc yêu cầu địa đích cuối để tái hợp phân đoạn có hai u điểm Thứ nhất, giảm đợc lợng tin trạng thái router Khi truyền tiếp datagram, router không cần biết liệu datagram phân mảnh hay không Thứ hai, cho phép định tuyến thay đổi linh hoạt Nếu router tái hợp phân đoạn tất phân đoạn phải đến router Nhờ việc không tái hợp đến tận đích cuối cùng, giao thức liên mạng IP cho phép tự truyền phân đoạn datagram theo định tuyến khác V Nhận dạng datagram Nhớ lại IP không đảm bảo việc truyền Do vậy, phân đoạn bị đến sai thứ tự Hơn nữa, nguồn gửi nhiều datagram đến đích, phân đoạn datagram đến theo thứ tự khác Vậy làm mà giao thức IP tái hợp đợc phân đoạn đến sai thứ tự? Mỗi máy gửi thiết lập giá trị số nhận dạng trờng IDENTIFICATION datagram Khi router thực phân đoạn datagram, router chép số nhận dạng phân đoạn Máy nhận dùng số nhận dạng địa Ip nguồn phân đoạn đến để xác định phân đoạn thuộc datagram Hơn nữa, trờng FRAGMENT OFFSET cho máy nhận biết thứ tự phân đoạn datagram VI Sự phân đoạn Giao thức IP không đảm bảo truyền phân cứng gây gói tin, datagram phân đoạn đợc đóng gói bị Khi tất phân đoạn datagram đến, datagram đợc tái hợp lại Tuy nhiên, có cố xảy với nhiều phân đoạn datagram đó, phân đoạn đến trễ bị Mặc dù datagram tái hợp lại nhng máy nhận phải lu phân đoạn lại đề phòng trờng hợp phân đoạn bị trễ Máy nhận giữ phân đoạn lâu phân đoạn chiếm dung lợng nhớ máy Để tránh bị hết nhớ, giao thức IP giới hạn thời gian lớn lu trữ phân đoạn Khi phân đoạn datagram đến, máy nhận bắt đầu tính Nếu tất phân đoạn datagram đến trớc thời gian hết thời gian cho phép, máy nhận huỷ bỏ thời gian tiến hành tái hợp datagram Tuy nhiên, hết thời gian trớc tất phân đoạn đến kịp, máy nhận huỷ bỏ toàn phân đoạn nhận đợc Kết đo thời gian để tái hợp IP tất gì: tất phân đoạn đến tái hợp thành datagram thành công, IP huỷ bỏ toàn phân đoạn nhận đợc Đặc biệt chế máy nhận báo cho máy gửi biết phân đoạn đến thành công Sự thiết kế hoàn toàn nhạy cảm máy gửi đợc phân đoạn Hơn nữa, máy gửi tiến hành truyền lại datagram đó, việc định tuyến khác điều có nghĩa truyền lại không cần thiết phải truyền qua định tuyến trớc Do vậy, điều đảm bảo truyền lại datagram phân mảnh giống nh cách làm trớc 23 Phần VI Giao thức IP tơng lai (IPv6) Trong phần tập trung xem xét đến phiên giao thức IP tơng lai Phần bắt đầu việc xem xét mạnh hạn chế phiên giao thức IP tại, sau xem xét đến cách tổng thể phiên IP mà IEIF để xuất nhằm thay phiên thời Phần giải thích đặc điểm phiên tại, đa cách khắc phục hạn chế phiên thời Sự thành công giao thức IP Phiên IP thời đạt đợc thành công phủ nhận Ip giúp cho liên mạng hoạt động tốt việc điều khiển mạng không đồng nhất, thay đổi công nghệ phần cứng tăng lên đáng kể khoảng cách Để khắc phục không đông nhất, IP đa định dạng gói tin đồng (các IP Datagram) chế truyền gói tin Phiên Ip thích hợp với thay đổi công nghệ phần cứng Mặc dù liệu đợc đa trớc công nghệ mạng cục trở nên phổ biến nhng thiết kế lại đợc tiếp tục thực tốt qua vài hệ công nghệ phần cứng Ip đợc dùng mạng mà đòi hỏi việc thực số công việc lớn nhanh so với mạng mà đợc dùng IP đợc thiết kế cho Hơn nữa, vài mạng địa đa kích thớc frame lớn nhiều kích thớc frame Ip đa Quan trọng hơn, IP làm việc hiệu mạng u điểm tăng đợc kích thớc frame I Các đặc điểm giao thức IPv6 Ipv6 lại nhiều đặc tính thiết kế mà thành công Ipv4 Giống nh Ipv4, Ipv6 không liên kết datagram có chứa địa đích, datagram đợc định tuyến cách độc lập Giống nh Ipv4, header datagram có số lợng lớn máy tiếp mà datagram qua trớc bị huỷ bỏ Hơn nữa, Ipv6 lại hầu hết đặc tính linh hoạt chung có chọn lựa Ipv4 Mặc dù giữ lại nhiều đặc tính phiên cũ, Ipv6 có thay đổi chi tiết Ví dụ, Ipv6 sử dụng địa lớn có toàn phần định dạng header Cuối cùng, Ipv6 dùng dãy header có chiều dài cố định để thực thông tin chọn lựa thay header với trờng tuỳ chọn chiều dài thay đổi phiên trớc Các đặc tính Ipv6 đợc nhóm lại thành loại chính: Kích thớc địa chỉ: thay dùng địa 32 bit, địa Ipv6 có chiều dài 128 bit Do mà khoảng không gian địa đủ lớn để thích hợp với việc tiếp tục phát triển mạng Internet toàn cầu nhiều năm tới Định dạng header: phần header Ipv6 Datagram hoàn toàn khác so với header Ipv4 Hỗu hết trờng header thay đổi; vài đợc thay Các header mở rộng Không giống nh Ipv4 mà sử dụng định dạng header với tất datagram, Ipv6 mã hoá thông tin header riêng biệt Một datagram bao gồm header sở, tiếp đến không nhiều header mở rộng cuối phần liệu Hỗ trợ cho âm hình ảnh Ipv6 gồm có chế cho phép máy gửi nhận 24 thiết lập đờng truyền chất lợng cao thông qua phần cứng sở để kết hợp datagram với đợc truyền Mặc dù chế dự định dùng cho ứng dụng âm hình ảnh mà đòi hỏi hiệu suất cao, nhng sử dụng để kết hợp datagram với đờng truyền chi phí thấp Giao thức co dãn không giống nh Ipv4, Ipv6 không tất đặc tính giao thức Thay vào ngời thiết kế phải cung cấp chế cho phép máy gửi thêm thông tin cần thiết vào datagram Cơ chế mở rộng làm cho Ipv6 linh hoạt so với Ipv4, điều có nghĩa đặc tính đợc thêm vào thiết kế cần II Định dạng Datagram Ipv6 Nh hình 22 minh hoạ, Ipv6 Datagram bắt đầu với phần header sở tiếp đến nhiều header mở rộng, cuối phần liệu Tuỳ chọn Header sở Header mở rộng Header mở rộng N Vùng liệu Hình 22 mẫu chung Ipv6 Datagram Các header mở rộng tuỳ chọn datagram nhỏ có header sở tiếp đến vùng liệu Mặc dù minh hoạ cấu trúc chung datagram, nhng trờng hình vẽ cha đợc vẽ chi tiết Đặc biệt, vài header mở rộng có kích thớc lớn header sở vài header khác nhỏ Hơn nữa, nhiều datagram, kích thớc vùng liệu nhỏ kích thớc header Định dạng header sở Ipv6 Mặc dù header sở Ipv6 lớn gấp hai lần header Ipv4 nhng lại chứa thông tin Hình 23 minh hoạ định dạng Nh hình vẽ ra, hầu hết không gian header dành cho hai trờng nhận dạng máy gửi máy nhận Nh Ipv4, trờng SOURCE ADDRESS nhận dạng máy gửi trờng DESTINATION ADDRESS nhận dạng máy nhận Mỗi địa chiếm 16 byte gấp lần địa Ipv4 16 FLOW LABEL PAYLOAD LENGTH NEXT HEADER SOURCE ADDRESS VERS 24 31 HOP LIMIT DESTINATION ADDRESS Hình 23 định dạng header sở Ipv6 Cùng với trờng địa đích nguồn, header sở chứa trờng Trờng VERS xác nhận liệu phiên Trờng PAYLOAD LENGTH tơng tự nh trờng chiều dài datagram Ipv4 Không giống nh Ipv4, trờng PATLOAD LENGTH không chỉ kích thớc vùng liệu kích thớc bao gồm phần header Trờng HOP LIMIT tơng tự nh trờng TIME-TO-LIVE Ipv4 Ipv6 đặt HOP LIMIT xác 25 datagram bị huỷ bỏ HOP LIMIT đếm đến giá trị trớc datagram đến đợc đích Các trờng lại phần header cần có giải thích chi tiết Trờng FLOW LABEL dự định để sử dụng cho ứng dụng mà đòi hỏi hiệu suất cao Nhãn dùng để gắn kết datagram với đờng dẫn riêng Nhãn đợc chia thành phần phần dùng để lớp truyền tải, phần lại dùng để định nghĩa đờng dẫn cụ thể Lớp truyền tải đặc điểm chung mà datagram cần Ví dụ, để gửi tơng tác (ví dụ nh phím bấm chuyển động chuột), dùng lớp truyền tải chung cho độ trễ thấp để gửi âm với thời gian thực qua liên mạng, máy gửi đòi hỏi phần cứng sở thiết lập đờng truyền có độ trễ nhỏ 100 mili giây Khi đờng truyền đợc thiết lập, hệ thống mạng trả thẻ nhận dạng mà máy gửi đặt datagram để gửi theo đờng truyền Các router dùng giá tị trờng FLOW LABEL để định tuyến datagram dọc theo đờng truyền định trớc Trờng NEXT HEADER dùng để kiểu thông tin theo sau phần header Ví dụ, datagram gồm header mở rộng, trờng NEXT HEADER kiểu header mở rộng Nếu phần header mở rộng, trờng NEXT HEADER kiểu liệu chứa phần liệu datagram Hình 24 minh hoạ khái niệm (a) Base Header NEXT=TCP Base Header NEXT=ROUTE TCP Data Route header TCP Data NEXT=TCP (b) Hình 24 hai Ipv6 Datagram hình (a) gồm có phần header sở phần liệu hình (b) gồm có header sở, header định tuyến, liệu Trờng NEXT HEADER header kiểu phần II Ipv6 làm việc với nhiều header nh Bởi chuẩn giao thức đa giá trị cho kiểu header có thể, nên nhập nhằng nhận dạng trờng NEXT HEADER Máy nhận dùng trờng NEXT HEADER header để xác định phần theo sau Nếu giá trị trờng tờng ứng bới kiểu liệu, máy nhận truyền datagram đến cho mođun phần mềm thực xử lý liệu Nếu giá trị trờng NEXT HEADER tơng ứng với header khác, phần mềm IP phân tích header dịch nội dung Ngay kết thúc với header, IP dùng trờng NEXT HEADER để xác định phần sau header liệu header khác Làm để phần mềm Ipv6 kết thúc header bắt đầu phần mới? Mỗi vài kiểu header có kích thớc cố định Ví dụ, header sở có kích thớc cố định xác 40 byte Để chuyển đến phần sau header sở, phần mềm Ipv6 cần cộng thêm 40 vào địa phần header sở Một vài header mở rộng kích thớc cố định Trong trờng hợp đó, header phải có đủ thông tin để Ipv6 xác định đợc đâu kết thúc header Ví dụ, hình 25 minh hoạ dạng chung của header tuỳ chọn Ipv6 có chứa thông tin giống nh phần tuỳ chọn datagram Ipv4 Phần header tuỳ chọn mở rộng minh hoạ cách Ipv6 quản lý header mà có 26 kích thớc không cố định Khi biên soạn datagram, máy gửi lu trữ chiều dài phần header tuỳ chọn trờng HEADER LEN Khi máy nhận bắt gặp header tuỳ chọn mở rộng, dùng trờng HEADER LEN để xác định vị trí mục tiếp, trờng NEXT HEADER để xác định kiểu 16 31 NEXT HEADER HEADER LEN Một nhiều tuỳ chọn Hình 25 phần header tuỳ chọn mở rộng Ipv6 Bởi kích thớc phần header tuỳ chọn biến đổi datagram, trờng HEADER LEN xác định xác chiều dài III Sự phân đoạn Không giống nh Ipv4 gồm có trờng cho phân mảnh header datagram, Ipv6 để thông tin phân mảnh header riêng Hơn nữa, phân mảnh cần thiết, toàn datagram gốc (gồm phần header gốc) đợc chia thành phần nhỏ đặt phần payload phân đoạn header sở đ ợc tạo cho phân đoạn, header mở rộng phân đoạn đợc chèn thêm vào để xác nhận phân đoạn Hình 26 minh hoạ phân đoạn Ipv6 P1 P2 Base header P3 Data (a) (b) (c) (d) New Base header Frag header P1 New Base header Frag header P2 New Base header Frag header P3 Hình 26 minh hoạ phân đoạn Ipv6 Datagram gốc gồm có header hình (a), đợc chia thành phần nhỏ đặt phần payload phân đoạn hình b, c, d Nh hình vẽ, phân đoạn có kích thớc nhỏ datagram gốc Với Ipv4, kích thớc phân đoạn đợc chọn giá trị đơn vị truyền cực đại (MTU) mạng sở mà phân đoạn cần truyền qua Do vậy, phân đoạn cuối nhoe phân đoạn khác chứa phần liệu lại sau chia thành phần có kích thớc giá trị MTU từ datagram gốc Sự phân mảnh Ipv6 khác hẳn so với phân mảnh Ipv4 Nhớ lại Ipv4, router thcự phân mảnh router nhận đợc datagram qua 27 lớn so với khả mạng truyền đợc Trong Ipv6, máy trạm gửi có trách nhiệm cho phân mảnh Do vậy, máy trạm cần thiết chọn lựa kích thớc cho datagram mà phân mảnh; router dọc theo đờng truyền nhận đợc datagram lớn không thực phân mảnh datagram IV Cơ chế địa Ipv6 Giống nha Ipv4, Ipv6 thiết lập địa cho kết nối máy tính với mạng vật lý Do vậy, máy tính (có thể router) kết nối với mạng vật lý, máy tính đợc thiết lập địa Cũng giống nh Ipv4, Ipv6 chia địa thành phần phần đầu để xác nhận thuộc mạng phần cuối để xác định máy tính cụ thể mạng Mặc dù có cách tiếp cận việc thiết lập địa cho máy tính, địa Ipv6 khác với Ipv4 số cách Thứ nhất, tất chi tiết địa hoàn toàn khác thứ hai, Ipv6 đa tập địa đặc biệt khác hẳn so với địa đặc biệt Ipv4 Đặc biệt, Ipv6 địa đặc biệt cho việc truyền quảng bá mạng cụ thể Thay vào đó, địa Ipv6 thuộc kiểu sau: Unicast: địa tơng ứng máy tính đơn Một datagram gửi đến địa đợc truyền theo đờng truyền ngắn đến đích Multicast: địa tơng ứng với tập máy tính, nhiều vị trí khác nhau; thành viên thuộc tập hợp thay đổi lúc Khi datagram đợc gửi đến địa này, Ipv6 chuyển datagram đến thành viên thuộc tập hợp Cluster: địa tơng ứng với tập máy tính mà có phần đầu địa (ví dụ tất máy thuộc phòng) Một datagram gửi đến địa đợc định tuyến theo đờng ngắn sau đợc truyền đến xác tất máy tính (ví dụ máy tính gần máy gửi nhất) Nguyên nhân đa địa cluster xuất phát từ việc muốn cho phép làm dịch vụ Ví dụ, công ty đa dịch vụ mạng có thiết lập địa cluster cho vài máy tính mà tất cung cấp dịch vụ Khi ngời sử dụng gửi datagram đến địa cluster, Ipv6 gửi datagram đến máy tính thuộc cluster Nếu ngời sử dụng từ vị trí khác gửi datagram đến địa cluster, Ipv6 chọn lựa để định tuyến datagram đến thành viên khác thuộc cluster cho phép hai máy tính xử lý yêu cầu đồng thời Phân cách địa hệ 16 Ipv6 Mặc dù địa chiếm 128 bit thích hợp với phát triên Internet, nhng việc viết chúng thật cồng kềnh Ví dụ, địa 128 bit viết dới dạng chấm cách thập phân: 105.220.136.100.255.255.255.255.0.0.18.128.140.10.255.255 để giảm số ký tự dùng để viết địa chỉ, ngời thiết kế Ipv6 đa dạng cú pháp biểu diễn gọn gọi phân cách thập lục phân dấu hai chấm (colon hexadecimal notation) nhóm 16 bit đợc viết hệ 16 phân cách dấu hai châm Ví dụ, biểu diễn địa dạng là: 69DC:8864:FFFF:FFFF:0:1280:8C0A:FFFF Nh ví dụ ta thấy, phân cách thập lục phân dấu hai chấm cần ký tự để biểu diễn địa Cùng với việc tối u hoá gọi nén số (zero compression) làm giảm đợc kích thớc Sự nén số việc thay thể dãy số hai dấu hai chấm Ví dụ, địa là: 28 FF0C:0:0:0:0:0:0:B1 viết lại là: FB0C::B1 Không gian địa Ipv6 lớn chế đánh địa dùng nén số đặc biệt quan ngời thiết kế cho có nhiều địa Ipv6 có chứa dãy số Đặc biệt, để giúp cho việc dễ dàng chuyển đổi sang giao thức mới, ngời thiết kế thực việc ánh xạ địa Ipv4 thành địa Ipv6 Bất kỳ địa Ipv6 mà bắt đầu với 98 bit có chứa địa Ipv4 32 bit cuối Phần VII Tcp_dịch vụ truyền tin cậy Lời giới thiệu Trong phần trớc nói đến dịch vụ truyền gói tin không liên kết dùng IP giao thức kèm dùng để thông báo lỗi Trong phần xem xét đến TCP, giao thức truyền thông giao thức TCP/IP, giải thích làm mà giao thức đem lại truyền tin đáng tin cậy TCP đạt đợc nhiệm vụ mà dờng nh làm đợc sử dụng dịch vụ datagram không tin cậy đa IP truyền liệu đến máy tính khác, nhng cung cấp dịch vụ truyền liệu đáng tin cậy đến chơng trình ứng dụng TCP phải khắc phục hay độ trễ liên mạng để tạo khả truyền tin hiệu phải thực để không làm tải mạng router Sau xem xét dịch vụ mà TCP đem lại cho ứng dụng, phần xem xét đến kỹ thuật TCP sử dụng để đạt đợc độ tin cậy I Sự cần thiết truyền tin đáng tin cậy Những ngời lập trình phải nghĩ độ tin cậy yếu tố hệ thống máy tính Ví dụ, ngời lập trình đợc yêu cầu để xây dựng chơng trình ứng dụng để truyền liệu đến thiết bị vào nh máy in Chơng trình ứng dụng cần viết liệu vào thiết bị nhng không cần kiểm tra liệu có đến đầy đủ hay không Thay vào đó, chơng trình ứng dụng dựa vào hệ thông máy tính bên dới để đảm bảo độ tin cậy 29 truyền, hệ thống đảm bảo liệu không bị mất, trùng lặp truyền sai thứ tự Phần mềm TCP cần thiết đầu cuối kết nối ảo, nhng router kết nối Từ góc độ TCP, toàn liên mạng hệ thống truyền thông thực chấp nhận chuyển giao thông điệp mà không thay đổi tác động đến nội dung Giao thức truyền thông nh TCP phải đợc thiết kế cách cẩn thận để đạt đợc độ tin cậy Vấn đề chỗ: chuyển giao không tin cậy hệ thống truyền thông bên dới máy tính bị khởi động lại Để hiểu phạm vị vấn đề, xem xét tình có hai chơng trình ứng dụng hình thành kết nối TCP, giao tiếp với nhau, đóng kết nối sau lại hình thành kết nối Bởi thông điệp bị mất, trùng lặp, trễ truyền sai thứ tự, thông điệp từ lần kết nối thứ bị trùng lặp bị trễ lâu đến lần kết nối thứ hai đợc thiết lập Các thông điệp phải rõ ràng, giao thức phải chấp nhận thông điệp trùng lặp từ lần kết nối cũ cho phép chúng can thiệp vào kết nối Hệ thống máy tính bị khởi động lại thách thức lớn khác với ngời thiết kế giao thức TCP Tởng tợng tình hai chơng trình ứng dụng thiết lập kết nối sau hai máy tính bị khởi động lại Mặc dù phần mềm giao thức máy tính bị khởi động lại kết nối nữa, nhng phần mềm giao thức máy tính mà không bị khởi động lại cho kết nối tồn Hơn nữa, gói tin trùng lặp mà bị trễ gây thách thức khó khăn đặc biệt giao thức phải có khả loại bỏ gói tin II Sự truyền lại gói tin Làm TCP đạt đợc độ tin cậy? Câu trả lời phức tạp TCP sử dụng kỹ thuật đa dạng để thực phần khác cố Một kỹ thuật quan trọng kỹ thuật truyền lại Khi TCP truyền liệu, máy gửi khắc phục gói tin bị việc thực truyền lại Cả hai bên giao tiếp phải tham gia thực Khi TCP nhận liệu, gửi thông báo nhận đợc (acknowledgement) trở lại cho máy gửi Mỗi gửi liệu, TCP bắt đầu khởi tạo đồng hồ Nếu thời gian hết trớc acknowledgement đến, máy gửi truyền lại liệu Hình dới minh hoạ truyền lại Sự kiện máy trạm Gửi thông điệp Nhận ack Gửi thông điệp Nhận ack Gửi thông điệp Thời gian truyền lại hết Gửi lại thông điệp Nhận ack Sự kiện máy trạm Nhận thông điệp Gửi ack Nhận thông điệp Gửi ack Mất gói tin Nhận thông điệp Gửi ack Hình 28 ví dụ truyền lại Các mục bên trái tơng ứng với kiện máy tính truyền liệu, mục bên phải tơng ứng với kiện máy tính nhận liệu, thời gian xuống Máy gửi truyền lại liệu bị Cơ chế truyền lại TCP chìa khoá cho thành công thực đợc giao tiếp qua mạng cho phép nhiều chơng trình ứng dụng giao tiếp đồng thời Ví dụ, ứng dụng gửi liệu qua kênh vệ tinh đến máy tính nớc 30 khác, ứng dụng khác truyền liệu qua mạng cục đến máy tính phòng cạnh TPC phải sẵn sàng để truyền lại thông điệp bị hai kết nối Câu hỏi đặt là: TCP nên chờ trớc truyền lại? Các acknowledgement từ máy tính mạng cục đến vòng vài phần nghìn giây Nếu chờ qua lâu làm cho mạng đợc rỗi không đạt đợc thông lợng cực đại Do vậy, mạng cục bộ, TCP không nên chờ thời gian dài trớc truyền lại Tuy nhiên, việc truyền lại vài phần nghìn giây không tốt với mạng khoảng cách lớn kết nối vệ tinh truyền không cần thiết tiêu tốn dải tần thông lợng mạng bị giảm TCP đối mặt với thách thức khó khăn phải phân biệt truyền đích khoảng cách xa cục bộ: nhiều datagram gây tắc nghẽn mạng thực tế, tổng thời gian yêu cầu để truyền thông điệp nhận acknowledgement tăng giảm phụ thuộc vào độ lớn cờng độ vài mili giây Tóm lại: Độ trễ cho liệu truyền đến đích acknowledgement gửi trở lại phụ thuộc vào cờng độ mạng nh khoảng cách đến đích Bởi TCP cho phép nhiều chơng trinh ứng dụng giao tiếp với nhiều đích đồng thời điều kiện cờng độ mạng ảnh hởng đễn độ trễ, nên TCP phải thực độ trễ khác mà thay đổi nhanh chóng III Sự truyền lại thích hợp Trớc TCP đợc phát minh, giao thức truyền thông dùng giá trị độ trễ cố định để truyền lại ngời thiết kế giao thức quản lý mạng chọn lựa giá trị đủ lớn cho độ trễ mong chờ Những ngời thiết kế làm việc TCP nhận thời gian hết cố định làm việc không tốt với liên mạng Do vậy, họ chọn lựa việc tạo truyền lại TCP có khả thích nghi Đó TCP điều khiển độ trễ kết nối thời, có thay đổi thích hợp thời gian truyền lại để thích nghi với điều kiện thay đổi Làm để TCP điều khiển đợc độ trễ? Thực tế TCp biết xác độ trễ phần thuộc liên mạng thời điểm Thay vào TCP ớc tính độ trễ (round-trip delay) cho kết nối tích cực cách đo thời gian cần thiết để nhận đợc đáp lại Mỗi gửi thông điệp, TCP ghi nhận thời điểm mà thông điệp gửi Khi trả lời đến, TCP trừ thời gian thông điệp đợc gửi với thời gian để nhận đợc giá trị ớc tính cho độ trễ kết nối Khi gửi gói tin liệu nhận đợc acknowledgement, TCP tạo dãy giá trị ớc tính độ trễ dùng hàm thống kê để tính giá trị trung bình Cùng với giá trị trung bình, TCP lu ớc lợng biến thể, dùng kết hợp tuyến tính giá trị trung bình ớc tính biến thể để làm giá trị cho truyền lại Kinh nghiệm cho thấy truyền lại thích nghi TCP làm việc tốt Dùng biến thể giúp cho TCP phản ứng nhanh chóng độ trễ tăng số lợng lớn gói tin Dùng giá trị trung bình giúp cho TCP khởi tạo lại giá trị thời gian truyền lại độ trễ trả giá trị thấp sau có tải tạm thời Khi độ trễ trì không đổi, TCP điều chỉnh thời gian truyền lại đến giá trị lớn độ trễ chút Khi độ trễ bắt đầu biến đổi, TCP điều chỉnh thời gian truyền lại đến giá trị lớn nhiều giá trị trung bình để chịu đợc khả cực đại Để hiểu mà truyền lại thích nghi giúp cho TCP đạt đợc thông lợng cực đại kết nối, xem xét trờng hợp bị gói tin hai kết nối mà có độ trễ khác Ví dụ, hình minh hoạ truyền tin hai kết nối IV So sánh thời gian truyền lại Est 31 Est Est Est Time out Time out Packet lost Packet lost Hình 29 Hết thời gian truyền lại hai kết nối mà có độ trễ khác TCP tối u thông lợng việc dùng ớc tính để tính thời gian truyền lại Nh hình vẽ, TCP thiết lập thời gian hết truyền lại lớn hớn độ trễ Nếu độ trễ lớn TCP dùng thơì gian không tính truyền lại lớn hơn; độ trễ nhỏ, TCP dùng thời gian không tính nhỏ Mục đích để chờ đủ lớn để xác định gói tin có bị mà không bị chờ lâu cần thiết V Bộ đệm, điều khiển luồng cửa sổ TCP dùng chế cửa sổ (window) để điều khiển luồng liệu Khi kết nối đợc thiết lập, đầu kết nối cấp phát vùng đệm để lu giữ liệu đến, gửi kích thớc vùng đệm đến đầu Khi liệu đến, máy nhận gửi acknowledgement chúng kích thớc vùng đệm lại Khối lợng buffer sẵn có thời điểm gọi cửa sổ, thông báo kích thớc gọi thông báo cửa sổ (window advertisement) Một máy nhận gửi thông báo cửa sổ acknowledgement Nếu ứng dụng nhận đọc liệu đến, máy nhận gửi thông báo giá trị cửa sổ dơng theo acknowledgement Tuy nhiên, bên gửi thực nhanh bên nhận (có thể tốc độ CPU nhanh hơn), liệu đầy vùng đệm máy nhận làm cho máy nhận có cửa sổ Máy gửi nhận đợc thông báo giá trị cửa sổ phải dừng gửi đến máy nhận gửi trở lại thông báo giá trị cửa sổ dơng Trong hình vẽ, máy gửi dùng phân đoạn kích thớc cực đại 1000 byte Sự truyền bắt đầu máy nhận thông báo kích thớc cửa sổ ban đầu 2500 byte Máy gửi truyền đoạn, hai đoạn 1000 byte đoạn 500 byte Khi đoạn đến, máy nhận tạo acknowledgement với kích thớc cửa sổ giảm xuống lợng liệu đến Trong ví dụ này, đoạn điền vào vùng đệm máy nhận nhanh tốc độ ứng dụng tiêu thụ liệu Do vậy, cửa sổ thông báo tiến tới 0, máy gửi truyền thêm liệu Sau ứng dụng nhận tiêu thụ liệu 2000 byte, máy nhận gửi acknowledgement để thông báo kích thớc cửa sổ 2000 byte Kích thớc cửa sổ đợc thông báo lớn liệu đợc chấp nhận, vậy, máy nhận thông báo chấp nhận 2000 byte vợt 2500 byte nhận Máy gửi đáp lại việc truyền thêm hai đoạn Khi đoạn đến, máy nhận gửi acknowledgement với kích thớc cửa sổ giảm 1000 byte Lặp lại lần nữa, kích thớc cửa sổ giảm tới 0, làm cho máy gửi dừng việc truyền tin Cuối cùng, ứng dụng máy nhận thu thập đợc liệu, TCP nhận truyền ack với 32 kích thớc cửa sổ dơng Nếu máy gửi có liệu chờ để gửi, máy gửi tiếp tục trình truyền đoạn khác VI Sự thống bên Để đảm bảo kết nối đợc thiết lập kết thúc cách an toàn, TCP dùng cách bắt tay bên thông điệp đợc trao đổi Các nhà khoa học chứng minh trao đổi bên cần thiết đủ để đảm bảo thống rõ ràng bất chấp gói tin, trùng lặp độ trễ TCP dùng thuật ngữ đoạn đồng (synchronization segment) để miêu tả thông điệp bắt tay bên dùng để tạo kết nối, thuật ngữ FIN segment (finish) để miểu tả thông điệp bắt tay bên đóng kết nối Hình dới minh hoạ bắt tay bên dùng để đóng kết nối Sự kiện máy trạm Gửi FIN+ACK Sự kiện máy trạm Nhận FIN+ACK Gửi FIN+ACK Nhận FIN+ACK Gửi ACK Nhận ACK Hình 30 bắt tay bên dùng để đóng kết nối Các ack gửi theo hớng để đảm bảo tất liệu đến trớc kết nối kết thúc Giống nh thông điệp khác, TCP tủyền lại đoạn SYN FIN bị Hơn nữa, bắt tay đảm bảo TCP không mở đóng kết nối hai bên t ơng tác với Một phần để tạo bắt tay bên dùng để tạo kết nối đòi hỏi đầu tạo số 32 bit ngẫu nhiên Nếu ứng dụng cố gắng thiết lập kết nối TCP sau máy tính khởi động lại, TCP chọn số ngẫu nhiên Bởi kết nối nhận dãy giá trị ngẫu nhiên nên cặp ứng dụng dùng TCP để giao tiếp, đóng kết nối sau thiết lập kết nối mà không bị gói tin trùng lặp trễ VII Điều khiển tắc nghẽn Một lĩnh vực thú vị TCP chế điều khiển tắc nghẽn Trong hầu hết liên mạng đại, gói tin (hoặc trễ thời gian dài) bị gây tắc nghẽn nhiều phần cứng trục trặc Thú vị giao thức truyền thông thực truyền lại làm nghiêm trọng tắc nghẽn việc tống thêm nhiều thông điệp vào mạng Nếu tắc nghẽn gây bị truyền lại qua nhiều, toàn hệ thống tới tình trạng sụp đổ tắc nghẽn (congestion collapse), tơng tự nh tắc nghẽn giao thông đờng cao tốc Để tránh cố này, TCP luôn dùng gói tin bị để đo độ tắc nghẽn mạng, đáp lại việc giảm tốc độ truyền lại liệu Mỗi thông điệp bị mất, TCP bắt đầu điều khiển tắc nghẽn Thay truyền lại liệu đủ để điền đầy vùng đệm máy nhận, TCP bắt đầu việc gửi thông điệp đơn có chứa liệu Nếu ack đến mà thông tin bị mất, TCP gấp đôi lợng liệu gửi đi, gửi thông điệp Nếu có ack trả lời cho thông điệp đó, TCP gấp lần lợng liệu nh Sự tăng theo hàm mũ đến TCP gửi đợc nửa kích thớc cửa sổ máy nhận giảm dần tốc độ tăng để truyền 33 Cơ chế điều khiển tắc nghẽn TCP đáp ứng tốt tăng nhanh liên mạng Bằng cách giảm nhanh chóng, TCp tránh đợc tắc nghẽn Hơn nữa, tránh thêm vào truyền lại với tắc nghẽn liên mạng, chế điều khiển tắc nghẽn TCP ngăn ngừa đợc sụp đổ tắc nghẽn VIII Định dạng đoạn TCP TCP dùng định dạng cho tất thông điệp, bao gồm thông điệp có chứa liệu, ack thông điệp bắt tay 3bên để khởi tạo kết thúc kết nối TCP dùng thuật ngữ phân đoạn (segment) để thông điệp: Hình 20.6 minh hoạ định dạng phân đoạn 10 16 24 31 SOURCE PORT HLEN DESTINATION PORT SEQUENCE NUMBER ACKNOWLEDGEMENT NUMBER NOT USED CODE BITS WINDOW CHECK SUM URGENT POINTER BEGIN NING OF DATA Hình 31 định dạng phân đoận TCP Mỗi thông điệp gửi từ TCP máy đến TCP máy khác dùng định dạng bao gồm liệu acknowledgement Để hiểu định dạng phân đoạn, cần nhớ lại kết nối TCP có chứa hai luồng liệu theo hai hớng ngợc Nếu ứng dụng bên truyền liệu đồng thời, TCP gửi phân đoạn có chứa acknowledgement cho liệu đến, thông báo cửa sổ lợng cùgn đệm trống cho liệu đến liệu Do vậy, vài trờng phân đoạn để luồng liệu truyền hớng, trờng khác luồng liệu truyền theo chiều ngợc lại Khi máy tính gửi phân đoạn, trờng ACKNOWLEDGEMENT NUMBER trờng WINDOW liệu truyền đến: trờng ACK NUMBER số thứ tự liệu nhận đợc trờng WINDOW vùng trống lại vùng đệm Trờng SEQUENCE NUMBER liệu Nó chứa số thứ tự liệu đợc truyền phân đoạn Máy nhận dùng số thứ tự để xếp lại phân đoạn mà đến sai thứ tự để tính số ack Trờng DESTINATION PORT xác định chơng trình ứng dụng máy nhận nhận liệu này, ngợc lại trờng SOURCE PORT xác nhận ứng dụng gửi liệu Cuối trờng CHECKSUM có chứa giá trị checksum toàn phân đoạn TCP gồm phần header liệu Mục lục LI MU Phần I Sơ lợc giao thức TCP/IP .1 I Các lớp giao thức TCP/IP Lớp 1: vật lý Lớp 2: Nối ghép mạng Lớp 3: Internet 34 Lớp 4: truyền tải Lớp 5: ứng dụng II Máy chủ, router lớp giao thức Phần II .3 Địa IP I IP_ Địa giao thức internet Để tạo địa đồng mạng internet, phần mềm giao thức định nghĩa chế đánh địa trừu tợng mà host đợc thiết lập địa Ngời sử dụng , chơng trình ứng dụng lớp phần mềm giao thức cao sử dụng địa trừu tợng để giao tiếp với II Cơ chế đánh địa IP Trong stack giao thức TCP/IP, địa đợc quy định giao thức liên mạng (IP - internet protocol) Chuẩn IP quy định host đợc thiết lập số 32 bit gọi địa giao thức liên mạng host, hay thờng đợc viết tắt địa IP địa internet Mỗi gói tin gửi qua mạng có chứa địa IP 32 bit máy gửi địa máy nhận Do vậy, để truyền thông tin qua mạng TCP/IP, máy tính cần biết địa IP máy tính cần truyền đến .3 Phân cấp địa IP .4 Các lớp địa IP Lớp A, B C gọi lớp chúng sử dụng cho địa host Lớp D sử dụng cho multicast để dùng cho tập máy tính Để sử dụng địa multicast, tập máy trạm phải thoả thuận dùng chung địa multicast Mỗi nhóm multicast đợc thiết lập, gói tin chuyên đến địa multicast đợc chuyển đến tất máy trạm thuộc nhóm multicast Tính toán lớp địa Ký hiệu thập phân chấm Các lớp ký hiệu thập phân chấm Nơi quản lý địa III Ví dụ cách đánh địa IV Địa IP đặc biệt Địa mạng .8 Địa quảng bá trực tiếp Địa quảng bá giới hạn Địa máy tính Địa lặp quay lại IP định nghĩa địa lặp quay lại đợc sử dụng để kiểm tra ứng dụng mạng ngời lập trình thờng sử dụng kiểm tra lặp quay lại cho việc tìm lỗi ban đầu với ứng dụng mạng vừa đợc viết Để thực kiểm tra lặp quay lại, ngời lập trình cần có hai ứng dụng mà định giao tiếp với qua mạng Mỗi ứng dụng cần có phần mã lệnh thực việc tơng tác với phần mềm giao thức TCP/IP Thay việc phải thực chơng trình máy khác nhau, ngời lập trình chạy hai chơng trình máy tính dẫn chúng thực địa IP lặp quay lại kết nối Khi ứng dụng gửi liệu đến ứng dụng khác, liệu truyền qua ngăn xếp giao thức để đến chơng trình Do vậy, ngời lập trình kiểm tra chơng trình ứng dụng cách nhanh chóng không cần chạy hai máy tính không cần truyền gói tin qua mạng Tóm tắt địa IP đặc biệt Dạng địa quảng bá Berkeley 10 V Router nguyên tắc đánh địa IP 10 Phần III .11 Đóng kết địa giao thức (ARP) 11 I.Giới thiệu chung 11 Địa giao thức phân phát gói tin 12 Để tạo đợc mạng ảo lớn, phần mềm làm việc với địa IP truyền tiếp gói tin Cả địa máy tiếp địa đích gói tin địa IP Không may địa giao thức đợc sử dụng để truyền frame 35 qua phần cứng mạng vật lý không hiểu đợc địa IP Thay vào đó, frame gửi qua mạng vật lý phải sử dụng định dang frame phần cứng tất địa frame địa vật lý Kết là, địa giao thức máy tiếp đợc chuyển thành địa vật lý tơng ứng trớc frame đợc truyền 12 II Phân giải địa 12 III.Kỹ thuật phân giải địa 13 IV Giao thức phân giải địa .13 VI Gửi thông điệp ARP 14 VII Xử lý thông điệp ARP đến 14 VII Các lớp, phân giải địa chỉ, địa giao thức 15 Phần VI 16 IP datagram datagram forwarding 16 I IP Datagram 16 II Truyền tiếp IP Datagram 17 Mỗi đích liệt kê bảng định tuyến mạng, máy trạm Sự phân biệt quang trọng liên mạng có nhiều gấp 1000 lần máy trạm có mạng Do vậy, sử dụng mạng đích bảng định tuyến góup cho kích thớc chúng nhỏ 17 III Địa IP dòng bảng định tuyến 17 IV Trờng mặt nạ truyền tiếp datagram .18 V Các địa đích máy tiếp 18 VI Truyền với nỗ lực (Best-effort Delivery) .19 VII Định dạng header IP datagram .19 Phần V .20 Sự đóng gói IP, phân đoạn hợp lại 20 I Sự truyền datagram frame .20 II Sự đóng gói 21 III Sự truyền tin qua liên mạng 21 Nh hình vẽ, máy trạm router lu trữ datagram nhớ mà phần header thêm vào Khi datagram truyền qua mạng vật lý, datagram đợc đóng gói frame thích hợp với mạng Kích thớc frame header xuất trớc datagram phụ thuộc vào công nghệ mạng Ví dụ, mạng Ethernet, header frame Ethernet header Tơng tự, mạng mạng vòng FDDI, header frame FDDI header 22 V Nhận dạng datagram 23 VI Sự phân đoạn .23 Phần VI 24 Giao thức IP tơng lai (IPv6) .24 Sự thành công giao thức IP 24 I Các đặc điểm giao thức IPv6 24 II Định dạng Datagram Ipv6 25 Header sở 25 Định dạng header sở Ipv6 25 II Ipv6 làm việc với nhiều header nh .26 III Sự phân đoạn .27 Base header 27 New Base header .27 New Base header .27 New Base header .27 Giống nha Ipv4, Ipv6 thiết lập địa cho kết nối máy tính với mạng vật lý Do vậy, máy tính (có thể router) kết nối với mạng vật lý, máy tính đợc thiết lập địa Cũng giống nh Ipv4, Ipv6 chia địa thành phần phần đầu để xác nhận thuộc mạng phần cuối để xác định máy tính cụ thể mạng 28 36 Phân cách địa hệ 16 Ipv6 28 Tcp_dịch vụ truyền tin cậy 29 Lời giới thiệu 29 I Sự cần thiết truyền tin đáng tin cậy 29 II Sự truyền lại gói tin 30 III Sự truyền lại thích hợp 31 IV So sánh thời gian truyền lại 31 V Bộ đệm, điều khiển luồng cửa sổ 32 VI Sự thống bên 33 VII Điều khiển tắc nghẽn 33 VIII Định dạng đoạn TCP 34 Để hiểu định dạng phân đoạn, cần nhớ lại kết nối TCP có chứa hai luồng liệu theo hai hớng ngợc Nếu ứng dụng bên truyền liệu đồng thời, TCP gửi phân đoạn có chứa acknowledgement cho liệu đến, thông báo cửa sổ lợng cùgn đệm trống cho liệu đến liệu Do vậy, vài trờng phân đoạn để luồng liệu truyền hớng, trờng khác luồng liệu truyền theo chiều ngợc lại 34 37

Ngày đăng: 17/11/2016, 20:47

Xem thêm: Luận văn giao thức TCP IP

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w