随笔 - 576  文章 - 0  评论 - 62  阅读 - 219万

TCP/IP协议

1、OSI(Open System InterConnection),开放式系统互联,分为7层,TCP/IP分为4层:数据链路层,网络层,传输层,应用层。

2、网络链路层的地址是MAC地址,网络层的地址是IP地址,传输层的地址是Port

3、每一层上都有啥?

  网络层:IP,ARP,ICMP

  传输层:TCP,UDP

  应用层:HTTP,FTP,SMTP,DNS

4、ARP(Address Resolution Protocol):将目标IP地址转化为MAC地址

5、ICMP(Internet Control Message Protocol):确认网络是否正常。ping和tracert都是由ICMP实现的。tracert的原理:X在网络上找Y,对外发个消息,指明消息的接受者为Y,当A接收到消息时,返回消息给X,告诉X自己不是Y,把跳数(中间经过了几个人)加1,并且把消息对外发送,直到找到Y。

6、DNS(Domain Name System):把域名转化为IP地址。

7、对于TCP,如果每发一个消息,都要等到反馈,再发下一个,效率太低。解决办法是,发一个消息后,不必等到反馈,就发下一个消息,但是需要标记前一个消息还没有得到反馈。这就是滑动窗口协议。连续发的消息个数收到一定约束,如果发了N个消息后,还没收到第一个消息的反馈,需要等待第一个消息的反馈,不能再继续发了。

8、对于TCP,如果一连接好,就马上发送大量消息,可能会导致阻塞。解决办法是,采用试探性的策略,先发1个试试,没问题,再发2个试试,还没问题,再发4个试试。采用指数级向上加,直到达到阈值。这就是慢启动算法,慢启动算法并不慢,只不过是启动的时候慢,很快速度就上来了。

9、对于TCP,通信双方经常发送确认报文,单独回一个确认,效率太低。可以在给对方发数据的时候,顺便带上确认报文,这样就可以减少发送消息的个数,这就是捎带技术。

10、TCP为什么要进行三次握手?

  TCP是面向连接的协议,是靠谱的协议。如何保证靠谱呢?要保证双方确实可以沟通的。三次握手做了下面的事情,说明双方可以沟通。

  ①A问B一个问题;②B回答A的问题,同时问A一个问题,③A回答B的问题。

posted on   Andy Niu  阅读(368)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示