博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
毕业设计之路(2)——初识TCP
阅读量:2226 次
发布时间:2019-05-09

本文共 931 字,大约阅读时间需要 3 分钟。

按照陈老师的建议,先要把实验5.5搞懂。

写写实验5.5 TCP通信实验的原理,其实书上写的有。敲一遍,了解一下。

TCP协议全称是传输控制协议。TCP是基于IP数据帧的传输,提供可靠的数据传输服务。TCP有以下特点:

面向连接:TCP协议规定,在进行数据传输之前,两个节点必须使用TCP连接的建立过程进行连接,建立连接成功后,再进行数据传输。终止连接也要使用TCP连接中断过程关闭连接。

双向传输:在TCP协议中,每一个连接都有2个逻辑管道,一收一发。数据可以同时进行收和发,TCP报头包含传出数据和确认数据的序列号。

可靠传输:TCP协议规定,在传输数据时,要按顺序发送数据,并要得到接收方的确认,没有得到确认的数据将重发,接收方接收到重复包将丢弃,失序包将被还原为正确的序列。TCP校验字提供比特级的完整性校验。

数据字节流:在TCP的输入和输出逻辑管道上传输的数据被认为是连续的字节流,TCP报头的序列号和确认号都是以字节为单位确定的。TCP不知道所传输的字节流的内容是什么,以及在哪里起始,在哪里结束,对字节流数据的分析只能通过应用层的协议进行分析。

流控制:TCP协议中还规定了数据传输的流量控制,防止堵塞。在数据传输的双方都有接收缓冲区,如果一方接收缓冲区满了,另一方将不再发送,直到缓冲区有空余的空间。而双方的接收缓冲区都是独立的,永远也不会溢出。

应用层数据分段:TCP建立连接时,双方都交换可接收的最大段,如果接收到ICMP的“路径最大传输单位”MTU消息,能自动调整TCP最大短的大小。

一对一传输:TCP协议实现一对一通信服务。

SOCKET接口函数是TCP/IP的API,SOCKET API函数从使用的方式来分有三种

通用函数,就是TCP和UDP通信都使用的函数;

TCP专用函数,就是只是在TCP通信中使用的函数;

UDP专用函数,就是只在UDP通信中使用的函数。

编写TCP通信的任务时分为服务器方式和客户机方式两种。服务器方式是需要接听连接,只有在与客户机建立连接后才能进行数据处理。客户机方式是主动连接服务器,它也是在连接成功后才能进行数据处理。下面是TCP通信时服务器端和客户机端通信的函数应用流程图。

服务器端与 客户机端

转载地址:http://whofb.baihongyu.com/

你可能感兴趣的文章
《kubernetes权威指南·第四版》第二章:kubernetes安装配置指南
查看>>
Leetcode C++《热题 Hot 100-49》399.除法求值
查看>>
Leetcode C++《热题 Hot 100-51》152. 乘积最大子序列
查看>>
Leetcode C++ 《第181场周赛-1》 5364. 按既定顺序创建目标数组
查看>>
Leetcode C++ 《第181场周赛-2》 1390. 四因数
查看>>
阿里云《云原生》公开课笔记 第一章 云原生启蒙
查看>>
阿里云《云原生》公开课笔记 第二章 容器基本概念
查看>>
阿里云《云原生》公开课笔记 第三章 kubernetes核心概念
查看>>
阿里云《云原生》公开课笔记 第四章 理解Pod和容器设计模式
查看>>
阿里云《云原生》公开课笔记 第五章 应用编排与管理
查看>>
阿里云《云原生》公开课笔记 第六章 应用编排与管理:Deployment
查看>>
阿里云《云原生》公开课笔记 第七章 应用编排与管理:Job和DaemonSet
查看>>
阿里云《云原生》公开课笔记 第八章 应用配置管理
查看>>
阿里云《云原生》公开课笔记 第九章 应用存储和持久化数据卷:核心知识
查看>>
linux系统 阿里云源
查看>>
国内外helm源记录
查看>>
牛客网题目1:最大数
查看>>
散落人间知识点记录one
查看>>
Leetcode C++ 随手刷 547.朋友圈
查看>>
手抄笔记:深入理解linux内核-1
查看>>