TCP/IP

1、对于计算机网络协议,我们学习了很多协议的原理,各种机制,比如TCP的确认和重传机制,滑动窗口机制等等,我想问的是,这些确认机制,滑动窗口这些是谁实现的呢?操作系统实现的?还是网络适配器?还是开发者在开发程序的时候按照TCP协议的标准实现的??抑或是,开发语言本身的API实现了,开发者只需要调用相关的接口?
简单地说,就是所谓的网络协议,是不是只是一个标准,规定好一些报文首部格式,然后开发者在开发程序的时候自己去根据标准的规定实现逻辑?还是说,操作系统本身已经维护好一个协议栈,已经实现好传输层及以下的各层处理逻辑,程序员无需关心?

我的理解是:操作系统维护了TCP/ip协议栈,屏蔽了从链路层到传输层的实现细节,对上层应用提供socket,开发应用的人员只要调用socket即可,无需关心TCP等实现细节。不知道对不对呢?

2、不知道有没有朋友用过WinPcap来抓包?我想请问一下,WinPcap绕过了协议栈而对数据包进行捕获,那么它有实现对IP分片的重组吗?还是直接地捕获原生的链路层数据包(即IP分片后的包)?我做了下实现,在局域网链路的MTU为1500的情况下,传输一个3000字节的数据包,捕获的时候竟然是一个完整的数据包。实现的环境是,两台机器连接同一个家庭路由器,然后发送数据。当ping的时候,发现超过1472是提示要分片的,即MTU为1500。但是我们抓包明明是抓取的链路层的包,怎么抓到的不是几个分片后的包呢??难道WinPcap已经实现了IP分片重组?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值