- 黑客攻防從入門到精通(實戰(zhàn)秘笈版)
- 九天科技
- 469字
- 2019-10-14 11:49:28
1.2.3 TCP協(xié)議
TCP(Transmission Control Protocol傳輸控制協(xié)議)是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。通過三次握手建立連接,通信完成時要拆除連接,由于TCP是面向連接的所以只能用于端到端的通信。TCP提供的是一種可靠的數(shù)據(jù)流服務,采用“帶重傳的肯定確認”技術來實現(xiàn)傳輸?shù)目煽啃浴CP還采用一種稱為“滑動窗口”的方式進行流量控制,所謂窗口實際表示接收能力,用以限制發(fā)送方的發(fā)送速度。
如果IP數(shù)據(jù)包中有已經(jīng)封好的TCP數(shù)據(jù)包,IP將把它們向“上”傳送到TCP層。TCP將包排序并進行錯誤檢查,同時實現(xiàn)虛電路間的連接。TCP數(shù)據(jù)包中包括序號和確認,所以未按照順序收到的包可以被排序,而損壞的包可以被重傳。
TCP將它的信息送到更高層的應用程序,如Telnet的服務程序和客戶程序。應用程序輪流將信息送回TCP層,TCP層便將它們向下傳送到IP層,設備驅(qū)動程序和物理介質(zhì),最后到接收方。
TCP則適用于可靠性要求很高但實時性要求不高的應用,如文件傳輸協(xié)議FTP、超文本傳輸協(xié)議HTTP、簡單郵件傳輸協(xié)議SMTP等。面向連接的服務需要高度的可靠性,所以它們使用了TCP。DNS在某些情況下使用TCP(發(fā)送和接收域名數(shù)據(jù)庫),使用UDP傳送有關單個主機的信息。
推薦閱讀
- Advanced Machine Learning with Python
- Learning Selenium Testing Tools with Python
- TypeScript圖形渲染實戰(zhàn):基于WebGL的3D架構與實現(xiàn)
- Python數(shù)據(jù)可視化之Matplotlib與Pyecharts實戰(zhàn)
- PhoneGap Mobile Application Development Cookbook
- Mastering Rust
- concrete5 Cookbook
- ArcGIS By Example
- Unity 2018 Augmented Reality Projects
- Java Web從入門到精通(第3版)
- Nagios Core Administration Cookbook(Second Edition)
- HTML5+CSS3+JavaScript 從入門到項目實踐(超值版)
- Java EE 7 with GlassFish 4 Application Server
- 嵌入式Linux C語言程序設計基礎教程
- .NET 4.0面向?qū)ο缶幊搪劊簯闷?/a>