Tìm hiểu về SCTP và đánh giá, thử nghiệm

82 388 0
Tìm hiểu về SCTP và đánh giá, thử nghiệm

Đ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

Tìm hiểu SCTP đánh giá, thử nghiệm LỜI CẢM ƠN Để hoàn thành luận văn này, nhận tin tưởng bảo nhiều từ thầy PGS.TS Ngô Hồng Sơn, Bộ môn Truyền thông Mạng máy tính – Viện Công nghệ thông tin Truyền thông – Đại học Bách Khoa Hà Nội Trước hết xin gửi lời cảm ơn sâu sắc đến PGS.TS Ngô Hồng Sơn dành thời gian tâm huyết hướng dẫn, giúp đỡ hoàn thành Luận văn tốt nghiệp Tôi xin gửi lời cảm ơn đến gia đình bạn bè động viên nhiều thời gian làm luận văn, cảm ơn ban lãnh đạo công ty Hyperlogy tạo điều kiện thuận lợi việc cung cấp thiết bị thực thí nghiệm luận văn Nhân xin gửi lời cảm ơn đến quý thầy cô Viện Công nghệ thông tin Truyền thông tạo nhiều điều kiện để học tập tích lũy kiến thức thời gian theo đuổi khóa học trường Một lần gửi lời cảm ơn chân thành đến tất quý thầy cô Viện Công nghệ thông tin Truyền thông – Đại học Bách Khoa Hà Nội gia đình, bạn bè ban lãnh đạo công ty Hyperlogy giúp đỡ hoàn thành luận văn Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn Tìm hiểu SCTP đánh giá, thử nghiệm DANH MỤC CÁC TỪ VIẾT TẮT: 3GPP ACK API 3rd Generation Partnership Dự án mạng hệ 3G Project Báo nhận Acknowledgment Application Programming Giao diện lập trình ứng dụng Interface DoS Deny of Service Tấn công từ chối dịch vụ HoL Head of Line Nghẽn đầu dòng HTTP Hyper Text Transfer Protocol Giao thức truyền siêu văn IETF Internet Engineering Task Force Nhóm đặc trách kỹ thuật Internet IP Internet Protocol Giao thức internet MAC Message Authentication Code Mã xác thực thông điệp MTU Maximum Transmission Unit CBR Constan Bit Race RFC Resquest for Command RTP Real Time Protocol RTT Round-trip Time Thời gian vòng Advertised receiver window Bộ đệm để nhận liệu mà đầu credit thu quảng bá cho đầu gửi Selective acknowledgement Báo nhận có chọn lọc Stream Control Transmission Giao thức truyền thông theo Protocol luồng có điều khiển A_rwnd SACK SCTP Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn Đơn vị liệu truyền lớn đường truyền Tốc độ Bit không đổi Khuyến nghị duyệt thảo bình luận Giao thức vận chuyển thời gian thực Tìm hiểu SCTP đánh giá, thử nghiệm SCTPLIB Siemens SCTP library Thư viện SCTP Siemens SI Stream Identifier Nhận diện luồng SSN Stream Sequence Number Số thứ tự luồn SYN Synchronization Đồng SDP Session Description Protocol Giao thức mô tả phiên Giá trị ngưỡng (đơn vị byte) SCTP để xác định tắc SSTHRESH Slow Start Threshold nghẽn giai đoạn “khởi đầu chậm” hay “tránh tắc nghẽn” Giao thức truyền thông có điều TCP Transmission Control Protocol TCB Transport Control Block TSN Transmission Sequence Number Số thứ tự truyền TLV Type-Length-Value UAC User Agent Client UAS User Agent Server UDP User Datagram Protocol URL Uniform Resource Identifiers VoIP Voice over IP Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn khiển Khối điều khiển giao vận Kiểu-Độ dài-Giá trị Đơn vị thực chức client SIP Đơn vị thực chức server SIP Giao thức truyền thông người dùng Dạng địa để tham chiếu đến tài nguyên Internet Giao thức truyền tiếng nói qua Internet Tìm hiểu SCTP đánh giá, thử nghiệm DANH MỤC BẢNG: Bảng 2-1: So sánh đặc tính SCTP với TCP UDP 31 Bảng 3-1: Số liệu thông lượng HTTP điều kiện thường điều kiện gói 10%, với lớp transport TCP SCTP 60 Bảng 3-2: So sánh hiệu SIP với giao thức transport UDP SCTP điều kiện có phiên kết nối mạng tình trạng bình thường 68 Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn Tìm hiểu SCTP đánh giá, thử nghiệm DANH MỤC HÌNH VẼ ĐỒ THỊ: Hình 2-1: Định dạng gói tin SCTP Theo sau tiêu đề tổng quát hay nhiều chunk chứa đựng thông tin điều khiển hay thông tin liệu 14 Hình 2-2: Định dạng chunk SCTP 15 Hình 2-3: Thiết lập kết thúc kết nối SCTP sử dụng kĩ thuật cookie chế bắt tay bước để thiết lập kết nối Giai đoạn kết thúc kết nối chế bắt tay bước [15] 18 Hình 2-4 : Các giai đoạn trình hoạt động kết nối SCTP .21 Hình 2-5: Các host dạng multihomed A1 A2 hai địa IP đầu cuối A B1 B2 hai địa IP đầu cuối B 23 Hình 2-6: Kỹ thuật heartbeat SCTP 25 Hình 2-7: Nhiều luồng kết nối SCTP Các luồng luồng liệu logical chiều mà đầu cuối thỏa thuận với trình thiết lập kết nối25 Hình 2-8: Mô kiện nghẽn HoL luồng riêng rẽ bên đầu nhận .26 Hình 2-9: Mô multi-streaming Gói tin luồng không ảnh hưởng đến luồng khác 27 Hình 3-1: Lab dùng để kiểm tra hiệu suất SCTP mạng thực tế .37 Hình 3-2: Mô hình hoạt động lksctp bên nhân Linux .37 Hình 3-3: Lab hiển thị chức SCTP 39 Hình 3-4 : Tiêu đề tổng quát SCTP 40 Hình 3-5: Định dạng chunk liệu SCTP 41 Hình 3-6: Lab hiển thị chức tin cậy SCTP mạng trạng thái tải 41 Hình 3-7: Các chunk SACK 43 Hình 3-8: Các chunk liệu truyền lại 43 Hình 3-9 : Lab hiển thị độc lập luồng SCTP 44 Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn Tìm hiểu SCTP đánh giá, thử nghiệm Hình 3-10 : Sự độc lập luồng SCTP .45 Hình 3-11: Lab thể chức multi-homming .47 Hình 3-12: Kết mô multi-homming 48 Hình 3-13: Lab thể ưu điểm SCTP so với TCP môi trường mạng không ổn định 49 Hình 3-14: Thời gian ứng dụng truyền liệu với lớp transport SCTP TCP điều kiện bình thường 51 Hình 3-15: Thời gian ứng dụng truyền liệu với lớp transport SCTP TCP tỉ lệ gói 10% .52 Hình 3-16 : So sánh thời gian truyền lượng liệu TCP SCTP 52 Hình 3-17: So sánh TCP đa kết nối SCTP đa luồng với tỉ lệ gói thay đổi từ 0% đến 5% 53 Hình 3-18: Việc truyền nhiều luồng SCTP điều kiện gói 54 Hình 3-19: Hạn chế vấn đề HoL sử dụng nhiều luồng SCTP với tỉ lệ gói 10% 55 Hình 3-20 : Trang web với kết nối TCP từ client 56 Hình 3-21: Trang web với 10 kết nối TCP từ client 56 Hình 3-22 : Kiến trúc Lab thí nghiệm HTTP với SCTP làm giao thức lớp transport 57 Hình 3-23: Minh họa kết thu với kết nối sctp luồng từ httperf đến đến thttpd để truyền tập tin có dung lượng 10K Byte tỉ lệ gói 10% 60 Hình 3-24: So sánh thông lượng http với lớp transport TCP SCTP điều kiện thường 60 Hình 3-25: So sánh thông lượng http với lớp transport TCP SCTP điều kiện tỉ lệ gói 10% 61 Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn Tìm hiểu SCTP đánh giá, thử nghiệm Hình 3-26: Chồng giao thức multimedia Internet H323 hoạt động TCP, SIP hoạt động TCP, UDP hay SCTP, RTP hoạt động UDP 63 Hình 3-27: Kiến trúc chủ chốt SIP bao gồm agent người dùng, server (server proxy server chuyển hướng) dịch vụ xác định địa 64 Hình 3-28: Server đăng kí SIP theo dõi vị trí người dùng SIP 65 Hình 3-29 : Lab thực nghiệm SIP với giao thức transport SCTP UDP 67 Hình 3-30: So sánh hiệu SIP với giao thức transport UDP SCTP điều kiện có nhiều phiên kết nối mạng mạng tình trạng gói 70 Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn Tìm hiểu SCTP đánh giá, thử nghiệm MỤC LỤC: LỜI CẢM ƠN .1 DANH MỤC CÁC TỪ VIẾT TẮT: DANH MỤC BẢNG: DANH MỤC HÌNH VẼ ĐỒ THỊ: .5 DANH MỤC HÌNH VẼ ĐỒ THỊ: .5 LỜI NÓI ĐẦU 11 I MỞ ĐẦU 12 1.1 Giới thiệu SCTP 12 1.2 Các vấn đề quan trọng giải luận văn 13 II TỔNG QUAN 14 2.1 Cơ SCTP 14 2.2 Các giai đoạn (pha) kết nối SCTP .15 2.2.1 Thiết lập kết nối 15 2.2.2 Truyền liệu 18 2.2.3 Kết thúc kết nối 19 2.2.3.1 Kết thúc kết nối qui trình .19 2.2.3.2 Hủy kết nối chừng 20 2.3 Các đặc tính bật SCTP so với TCP 22 2.3.1 Những đặc tính chung .22 2.3.2 Multi-homing 23 2.3.3 Multi-streaming 25 2.3.4 Điều khiển luồng 28 2.3.5 Điều khiển tắc nghẽn 29 Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn Tìm hiểu SCTP đánh giá, thử nghiệm 2.3.6 Bảo mật 30 2.3.7 So sánh SCTP với TCP/UDP 31 Các vấn đề tồn SCTP 32 2.4 2.4.1 Phù hợp với yêu cầu độ tin cậy báo hiệu SS7 .32 2.4.2 Hiệu suất SCTP môi trường không dây 32 2.4.3 Cấu hình lại địa tự động 32 Giới thiệu LKSCTP tình trạng .33 2.5 2.5.1 Giới thiệu dự án LKSCTP 33 2.5.2 Tình trạng LKSCTP [16], [19], [20] 34 Kết luận 34 2.6 III THIẾT KẾ THỰC THI CÁC MÔ PHỎNG 36 3.1 Các đặc tính SCTP 38 3.1.1 Trường hợp một: định dạng gói tin SCTP 39 3.1.2 Trường hợp hai: chunk thứ tự bên luồng SCTP 41 3.1.3 Trường hợp ba: độc lập luồng SCTP 44 3.1.4 Trường hợp bốn: khả chịu lỗi với multi-homming 45 3.2 Đánh giá SCTP so với TCP UDP 49 3.2.1 Trường hợp 1: So sánh hiệu suất SCTP TCP với kết nối TCP 49 3.2.2 Trường hợp 2: So sánh hiệu suất SCTP TCP với nhiều kết nối TCP 53 3.2.3 Trường hợp 3: giải vấn đề HOL gặp phải TCP 53 3.3 3.3.1 Đánh giá ứng dụng với SCTP đóng vai trò lớp transport 55 Ứng dụng HTTP với SCTP 56 Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn Tìm hiểu SCTP đánh giá, thử nghiệm 3.3.2 Ứng dụng SIP với SCTP .61 3.3.2.1 Giới thiệu SIP 61 3.3.2.2 Kiến trúc SIP [17] 63 3.3.2.3 Thực Lab 65 IV KẾT LUẬN .71 TÀI LIỆU THAM KHẢO 73 PHỤ LỤC 75 Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 10 Tìm hiểu SCTP đánh giá, thử nghiệm server SIP Rõ ràng trình đăng kí với server SIP, SCTP sử dụng nhiều thông điệp hơn, đặc biệt kết nối SCTP thiết lập trước Hơn thông điệp liệu SCTP phải xác nhận thông điệp SACK port để nhận truyền liệu server SIP không giống có nhiều thông điệp SCTP để thiết lập kết nối Trong thí nghiệm này, port nhận 5060 port truyền 5061 Vì thời gian “đăng kí” SCTP lâu so với UDP  Tương tự thí nghiệm trên, thời gian thủ tục thiết lập gọi kết thúc gọi hai agent đo đạc cho hai trường hợp UDP Dễ thấy điều số lượng thông điệp trao đổi bên trường hợp SCTP nhiều hai lần so với UDP Kết nối SCTP tồn agent server SIP đóng, chunk thông điệp HEARTBEAT HEARTBEAT_ACK gửi agent server SIP Kết (đơn vị: mili giây) UDP SCTP Thủ tục đăng ký SIP 11 Thủ tục thiết lập gọi SIP Thủ tục kết thúc gọi SIP 2.5 Bảng 3-2: So sánh hiệu SIP với giao thức transport UDP SCTP điều kiện có phiên kết nối mạng tình trạng bình thường Chúng ta kết luận SCTP giao thức hướng kết nối với chế truyền liệu tin cậy nên số lượng thông điệp để thực thủ tục SIP dùng SCTP nhiều gấp đôi so với UDP Vì điều kiện bình thường thời gian để UDP thực thủ tục so với SCTP Trường hợp hai: môi trường mạng có gói 10% nhiều phiên kết nối  Dùng Netem để thiết lập mạng chế độ gói 5%, 10%, 20% 30% server SIP agent lại Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 68 Tìm hiểu SCTP đánh giá, thử nghiệm  Ở trường hợp gói, tiến trình agent cấu hình để chạy đồng thời kết nối máy tính chứa agent kphone Điều đồng nghĩa với luồng kết nối SCTP kết nối UDP máy  Số lượng giao dịch gọi SIP mà server xử lý đo đạc ghi nhận lại Kết quả: với mạng điều kiện gói 10% server SIP xử lý số lượng gọi dùng giao thức SCTP nhiều so với dùng giao thức UDP Sở dĩ có điều UDP chế phục hồi thủ tục truyền lại nhanh điều kiện gói hay giải tình trạng nghẽn HOL Do đó, dùng giao thức UDP, agent SIP phải chờ hết thời gian quy định để truyền lại gói Điều làm gia tăng thời gian trì hoàn, không thích hợp cho ứng dụng thời gian thực SIP Như nói trên, SCTP với đặc tính multi-stream thủ tục truyền lại nhanh nên giải vấn đề nghẽn mạng gói tốt so với UDP Kết điều kiện mạng bị gói, server SIP sử dụng SCTP hoạt động hiệu so với sử dụng UDP Nói chung thí nghiệm tương đối đơn giản nhiều so với điều kiện thực tế khác biệt hiệu suất SCTP UDP không lớn lắm, nên chưa thể kết luận chắn việc sử dụng SCTP cho SIP hiệu việc sử dụng UDP Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 69 Tìm hiểu SCTP đánh giá, thử nghiệm Hình 3-30: So sánh hiệu SIP với giao thức transport UDP SCTP điều kiện có nhiều phiên kết nối mạng mạng tình trạng gói Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 70 Tìm hiểu SCTP đánh giá, thử nghiệm IV KẾT LUẬN SCTP xem xét đánh giá để trở thành RFC từ tháng 10 năm 2000 Hiện thấy diện số hệ điều hành tiếng Linux, BSD Solaris tìm thấy Windows dạng gói phần mềm hãng thứ ba Ngày có nhiều ứng dụng sử dụng SCTP giao thức chủ chốt lớp transport Các dịch vụ phổ biến HTTP, SMB, FTP phát triển dựa đặc tính ưu việt SCTP Đặc biệt ứng dụng SIP hay SS7 hoạt động hiệu xây dựng tảng SCTP Chúng ta tìm thấy SCTP số sản phẩm thương mại hệ điều hành thiết bị mạng Cisco - Cisco IOS [19], [20] Khi so sánh SCTP với TCP, chúng có nhiều chức tương đồng chế truyền lại nhanh, chế điều khiển tắc nghẽn, điều khiển luồng, tính hướng kết nối, SACK Thêm vào đó, SCTP có nhiều đặc tính ưu việc mà tìm thấy TCP nhằm hạn chế nguy bảo mật (DOS) hay tăng cường khả kết nối, nâng cao hiệu suất thông qua đặc tính muli-homing multi-streaming, đặc biệt điều kiện mạng gặp bất lợi gói, tắc nghẽn… SCTP thay UDP hay TCP vai trò giao thức lớp transport ứng dụng mạng Ở thời điểm tại, dự án lksctp cung cấp API tốt để giúp phát triển ứng dụng SCTP dễ dàng Luận văn đánh giá phân tích tổng quan đặc tính SCTP mặt lý thuyết Để nắm bắt SCTP rõ ràng tương quan với UDP TCP, thí nghiệm công cụ đánh giá xây dựng từ đơn giản đến phức tạp môi trường mô Bắt đầu công cụ để truyền liệu đơn giản với giao thức lớp transport TCP SCTP đánh giá SCTP, TCP, UDP điều kiện môi trường NS-2 Cuối phân tích hiệu suất SCTP so với TCP UDP ứng dụng phổ biến HTTP SIP Tất thí nghiệm thực môi trường mạng ổn định gặp điều kiện bất lợi tắc nghẽn gói Tuy nhiên thí nghiệm Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 71 Tìm hiểu SCTP đánh giá, thử nghiệm tương đối đơn giản so với điều kiện thực tế chưa tối ưu mã nguồn, khác biệt mặt hiệu SCTP TCP, UDP chưa thật rõ ràng Trong tương lai SCTP cần nghiên cứu sâu sắc tối ưu để phổ biến thực tế Điều có nghĩa phải tinh chỉnh đặc tính SCTP làm với TCP, đồng thời đánh giá SCTP vai trò lớp transport nhiều ứng dụng FTP, NFS, SAMBA,… Các đánh giá cần môi trường phức tạp để gần với điều kiện thực tế Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 72 Tìm hiểu SCTP đánh giá, thử nghiệm TÀI LIỆU THAM KHẢO [1] An implementation of SCTP under Linux, http://lksctp.sourceforge.net/ [2] SCTP – RFC 4960, http://www.ietf.org/rfc/rfc4960.txt [3] LKSCTP, http://lksctp.sourceforge.net/overview.html [4] S Fu and all, SCTP “State of the Art in Research, Products, and Technical Challenges”, IEEE Communications Magazine, April 2004 [5] http://www.linuxfoundation.org/en/Net:Netem [6] http://www.linuxfoundation.org/en/Net:Bridge [7] W Richard Stevens, Bill Fenner, Andrew M Rudoff, UNIX® Network Programming Volume 1, Third Edition: The Sockets Networking API, Addison Wesley, 2003 [8] SCTP for Beginners, http://tdrwww.exp-math.uni- essen.de/inhalt/forschung/sctp_fb/index.html [9] [ns] awk/perl script to calculate throughput/delay/jitter from trace files http://mailman.isi.edu/pipermail/ns-users/2004-September/044655.html [10] NS-allinone-2.34, http://www.isi.edu/nsnam/ns/ [11] Rajesh Rajamani, Sumit Kumar, Nikhil Gupta, SCTP versus TCP, “Comparing the Performance of Transport Protocols for Web Traffic, Computer Sciences Department”, University of Wisconsin-Madison, May 2002 [12] Elvis Pfützenreuter, “Applicability and performance of the SCTP transport protocol”, master thesis, 2003-2004, http://epx.com.br/mestrado/index_en.php [13] thttpd, http://acme.com/software/thttpd/thttpd_man.html [14] httperf, http://www.hpl.hp.com/research/linux/httperf/httperf-man-0.9.pdf [15] Nguyen Anh Dung, Tran Minh Phat, Nguyen Thanh Van: Multi-streaming with SCTP, final report Page 6-15, 2009 Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 73 Tìm hiểu SCTP đánh giá, thử nghiệm [16] Stream Control Transmission Protocol (SCTP), http://www.sctp.org/index.html [17] Muhammad Sarfraz Zafar, Muhammad Shoaib Gill,”Evaluation of UDP and SCTP for SIP-T and TCP, UDP and SCTP with constant traffic”, Blekinge Institute of Technology, November 2008 [18] SCTP-DataTAG, http://datatag.web.cern.ch/datatag/WP3/sctp/tests.htm [19] SCTP, http://www.sctp.de/sctp.html [20] SCTP, http://www.sctp.org/ [21] Thomas Kwok-Cheong Pang, “Stream control transmission protocol support in session initiation protocol proxy server”, master thesis, Simon Fraser University, 2003 [22] TS Trần Công Hùng, “Chất lượng mạng tốc độ cao”, NXB Bưu điện, 2005 [23] SIP, http://en.wikipedia.org/wiki/Session_Initiation_Protocol [24] Wireshark, www.wireshark.org/download.html [25], Session Initiation Protocol, RFC 3261, http://www.ietf.org/rfc/rfc3261.txt Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 74 Tìm hiểu SCTP đánh giá, thử nghiệm PHỤ LỤC Chi tiết chunk SCTP Mỗi chunk bắt đầu với trường bit - “kiểu chunk” (chunk type), để phân biệt chunk liệu loại chunk điều khiển Tiếp theo trường “cờ” (flag) bit trường “chiều dài” (length) bit dùng để xác định chiều dài theo đơn vị byte chunk Trường cần thiết cho chunk chunk có độ dài không cố định, xác định giá trị liệu (payload) thật chunk Trong gói tin SCTP, chunk đệm thêm liệu rỗng cho chiều dài chunk bội số 32 bit Tất bye đệm thêm (0x00) byte không tính trường chiều dài chunk Có tất 13 loại chunk định nghĩa cho SCTP [8] Giá trị ID Kiểu chunk Chunk liệu (DATA) Chunk khởi tạo (INIT) Chunk báo nhận khởi tạo (INIT ACK) Báo nhận có chọn lọc (SACK) Chunk Heartbeat (HEARTBEAT) Báo nhận cho chunk Heartbeat (HEARTBEAT ACK) Chunk thông báo hủy nửa chừng (ABORT) Kết thúc kết nối (SHUTDOWN) Chunk báo nhận kết thúc kết nối (SHUTDOWN ACK) Chunk báo lỗi (ERROR) 10 Chunk chứa Cookie (COOKIE) 11 Chunk báo nhận Cookie (COOKIE ECHO) Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 75 Tìm hiểu SCTP đánh giá, thử nghiệm 12 Chunk thông báo tắc nghẽn(ECNE) 13 Chunk thông báo giảm cửa số tắc nghẽn(CWR) Chunk thông báo hoàn thành kết thúc kết nối (SHUTDOWN 14 COMPLETE) 15 -> 62 Các chunk dành riêng IETF 63 Định nghĩa chunk mở rộng 63-> 126 Các chunk dành riêng IETF 127 Định nghĩa chunk mở rộng 128-190 Các chunk dành riêng IETF 191 Định nghĩa chunk mở rộng 192-254 Các chunk dành riêng IETF 255 Định nghĩa chunk mở rộng Trong gói tin SCTP nào, chunk điều khiển trước chunk liệu Hai bit đầu trường kiểu chunk có ý nghĩa đặc biệt, chúng dùng để xử lý chunk không nhận diện  00xxxxxx : chunk bị hủy mà xử lý thêm  01xxxxxx : gửi trả chunk báo lỗi (chunk ERROR) Trong hai trường hợp này, tất phần lại gói tin không xử lý  10xxxxxx : bỏ qua chunk này, xử lý chunk  11xxxxxx : bỏ qua chunk này, xử lý chunk gửi chunk lỗi (chunk ERROR) a Chunk liệu Chunk chứa liệu thật truyền hai đầu cuối Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 76 Tìm hiểu SCTP đánh giá, thử nghiệm Type=0 Reserved U B E Length TSN Stream Identifier S Stream Sequence Number N Payload Protocol Identifier User Data (seq n of Stream S) b Chunk khởi tạo (INIT) Chunk dùng để khởi tạo kết nối hai đầu cuối Định dạng chunk sau Type=1 Chunk Flags Chunk Length Initiate Tag Advertised Recieiver Window Credit (a_rwnd) Number of Outbount Stream Number of Inbount Stream Initial TSN Optional/Variable-Length Parameters c Chunk báo nhận khởi tạo (INIT ACK) Chunk dùng để xác nhận việc khởi tạo kết nối SCTP Các trường INIT ACK có định dạng tương tự chunk khởi tạo kết nối (INIT) Nó sử dụng thêm hai tham số mở rộng khác trạng thái cookie (State Cookie) tham số không nhận diện (Unrecognized Parameter) Type=2 Chunk Flags Chunk Length Initiate Tag Advertised Recieiver Window Credit (a_rwnd) Number of Outbount Stream Number of Inbount Stream Initial TSN Optional/Variable-Length Parameters d Chunk báo nhận có chọn lọc (SACK) Chunk gửi đến đầu cuối bên để xác nhận chunk liệu (DATA) mà nhận để thông báo chuỗi chunk liệu thiếu thông Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 77 Tìm hiểu SCTP đánh giá, thử nghiệm qua giá trị số thứ tự truyền (transmission sequence number – TSN) SACK phải chứa tham số tích lũy TSN Ack (Cumulative TSN Ack) tham số a_rwnd (Advertised Receiver Window Credit) Giá trị tham số tích lũy TSN Ack định nghĩa TSN cuối nhận trước xảy cố nhận chuỗi TSN, đầu cuối gửi chunk SACK chưa nhận giá trị TSN TSN cuối Do tham số xác nhận điều đầu cuối nhận tất giá trị TSN nhỏ hay giá trị TSN tích lũy SACK bao gồm hay nhiều Gap Ack Block Mỗi Gap Ack Bock xác nhận chuỗi TSN nhận mà chuỗi TSN nhận có cố Với định nghĩa này, tất TSN xác nhận Gap Ack Block lớn hay tham số tích lũy TSN Ack Type=3 Chunk Flags Chunk Length Cumulative TSN Ack Advertised Recieiver Window Credit (a_rwnd) Number of Duplicate TSNs = Number of Gap Block = N x Gap Ack Block #1 Start Gap Ack Block #1 End Gap Ack Block #N Start Gap Ack Block #N End Duplicate TSN Duplicate TSN X e Chunk heartbeat (HEARTBEAT) Một đầu cuối gửi chunk cho đầu cuối bên để truy vấn khả kết nối địa đích cụ thể lớp transport thuộc kết nối Trường tham số chứa thông tin Hearbeat, cấu trúc liệu có chiều dài thay đổi mà có đầu gửi hiểu Type = Chunk Flags Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 78 Heartbeat Length Tìm hiểu SCTP đánh giá, thử nghiệm Heartbeat Information TLV (Variable-Length) f Xác nhận Heartbeat (HEARTBEAT ACKNOWLEDGEMENT) Một đầu cuối gửi chunk đến đầu cuối lại để phản hồi cho chunk Heartbeat Hearbeat Ack gửi tới địa IP nguồn gói tin IP chứa Hearbeat Trường tham số chứa cấu trúc liệu có chiều dài thay đổi Type = Chunk Flags Heartbeat Ack Length Heartbeat Information TLV (Variable-Length) g Chunk thông báo hủy kết nối nửa chừng (Abort) Chunk Abort gửi đến đầu cuối bên để đóng kết nối Chunk chứa tham số lí (Cause Parameters) để thông báo cho bên nhận nguyên nhân hủy bỏ kết nối Chunk liệu không kèm chunk Abort Các chunk điều khiển (ngoại trừ chunk INIT, INIT ACK, SHUTDOWN COMPLETE) kèm với chunk Abort phải đặt trước Abort gói tin SCTP, không chúng không bên nhận xử lý Nếu đầu cuối nhận chunk Abort có định dạng bị lỗi hay cho kết nối không tồn tại, hủy chunk mà xử lý thêm Hơn nữa, trường hợp nào, đầu cuối nhận chunk Abort, không phản hồi cách gửi trả chunk Abort Type = Reserved T Length Zero or more Error Cause h Chunk thông báo kết thúc kết nối (SHUTDOWN) Một đầu cuối phải dùng chunk thông báo đầu cuối bên để bắt đầu đóng kết nối theo qui trình Chunk có định dạng sau Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 79 Tìm hiểu SCTP đánh giá, thử nghiệm Type = Chunk Flags Length = Cumulative TSN Ack i Chunk xác nhận kết thúc kết nối (Shutdown ACK) Chunk phải dùng để phản hồi việc nhận chunk Shutdown tiến trình hoàn thành việc đóng kết nối Chunk tham số Type = Chunk Flags Length = j Chunk báo lỗi (ERROR) Một đầu cuối gửi chunk cho đầu cuối lại để thông báo số tình trạng lỗi định Nó chứa hay nhiều nguyên nhân gây lỗi Error không xem đỗ vỡ bên hay dùng với chunk Abort để báo cáo tình trạng lỗi Type = Chunk Flags Length One or more error causes Tham số trường có độ dài thay đổi chứa loại lỗi xảy Cause code Cause length Cause-specific Information Mỗi nguyên nhân gây lỗi chứa tập tham số Các nguyên nhân gây lỗi định nghĩa sau Giá trị Miêu tả lỗi ID nhận diện luồng không hợp lệ Thiếu tham số bắt buộc Lỗi trạng thái cooke Không tài nguyên Không phân giải địa Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 80 Tìm hiểu SCTP đánh giá, thử nghiệm Không nhận diện kiểu chunk Tham số bắt buộc không hợp lệ Tham số không nhận diện Không có liệu người dùng 10 Nhận cookie kết thúc kết nối k Chunk Cookie Echo (COOKIE ECHO) Chunk dùng trình khởi tạo kết nối Bên khởi tạo kết nối gửi chunk đến đầu bên để hoàn tất trình khởi tạo Trong kết nối, phải xử lý trước chunk liệu gửi đi, kèm với hay nhiều chunk liệu gói tin SCTP l Chunk xác nhận Cookie (COOKIE ACK) Chunk dùng trình khởi tạo kết nối, để phản hồi việc nhận chunk Cookie Echo Chunk phải xử lý trước chunk liệu hay chunk SACK gửi kết nối, kèm với chunk liệu hay chunk SACK gói tin SCTP Type = 11 Chunk Flags Length =4 m Chunk thông báo hoàn tất kết thúc kết nối (SHUTDOWN COMPLETE) Chunk phải sử dụng để phản hồi việc nhận chunk SHUTDOWN ACK tiến trình hoàn tất việc kết thúc kết nối Chunk tham số Type = 11 Chunk Flags T Length =4 Mã nguồn chương trình viết lksctp API (trong đĩa CD kèm) a Chương trình thí nghiệm HoL b Chương trình thí nghiệm so sánh TCP kết nối SCTP Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 81 Tìm hiểu SCTP đánh giá, thử nghiệm c Chương trình thí nghiệm so sánh TCP 10 kết nối SCTP Mã nguồn ngôn ngữ Pert viết cho NS-2.34 để thí nghiệm so sánh hiệu suất UDP, TCP SCTP điều kiện mạng (trong đĩa CD kèm) Mã nguồn đoạn mã awk để thống kê thông tin thông lượng, gói,… tập tin trace thu từ NS-2 (trong đĩa CD kèm) Mã nguồn chương trình http client httperf http server thttpd sửa đổi để hỗ trợ SCTP cho HTTP (trong đĩa CD kèm) Mã nguồn chương trình SIP server Partsip SIP agent Kphone sửa đổi để hỗ trợ SCTP cho SIP (trong đĩa CD kèm) Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 82 ... Sơn 20 Tìm hiểu SCTP đánh giá, thử nghiệm Hình 2-4 : Các giai đoạn trình hoạt động kết nối SCTP Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 21 Tìm hiểu SCTP đánh giá, thử nghiệm.. . tcpdum hỗ trợ SCTP Tất phiên giai đoạn nghiên cứu, phát triển, Học viên: Nông Anh Đức Người hướng dẫn: PGS.TS Ngô Hồng Sơn 12 Tìm hiểu SCTP đánh giá, thử nghiệm SCTP cần phải tìm hiểu sâu sắc,... nghị duyệt thảo bình luận Giao thức vận chuyển thời gian thực Tìm hiểu SCTP đánh giá, thử nghiệm SCTPLIB Siemens SCTP library Thư viện SCTP Siemens SI Stream Identifier Nhận diện luồng SSN Stream

Ngày đăng: 26/07/2017, 21:05

Từ khóa liên quan

Mục lục

  • loi cam on

  • danh muc cac tu viet tat

  • danh muc bang

  • danh muc hinh ve, do thi

  • muc luc

  • loi noi dau

  • chuong 1

  • chuong 2

  • chuong 3

  • chuong 4

  • tai lieu tham khao

  • phu luc

Tài liệu cùng người dùng

Tài liệu liên quan