tcp协议族中,tcp链路的建立是基于进程的?还是?

苦逼码农 2016-01-29 07:11:22
假设a 和B 两主机用tcp家族协议通信,

a作为服务器, a主机上有进程1, 进程2.

b 作为客户端,b主机上有进程1, 进程2

主机a进程1<------------------->主机b进程1(socket通信)

主机a进程2<-------------------->主机a进程2(socket通信)

那么主机a和主机b 之间的通信链路建立了几条?

问题2:

tcp的协议栈的问题,客户端发送数据给服务器, 数据到达服务器系统缓存里(不是应用层软件的缓冲区里),

服务器没有用recv/read去读取数据,时间久了或者服务器重启了,会怎么样?



...全文
132 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
kinkon007 2016-02-01
  • 打赏
  • 举报
回复
问题1是2 问题2: 从协议栈上来讲,没有调用recv/read,数据依旧会存在协议栈的缓冲里,如果是TCP,窗口满了后就不会再发送数据,如果调用了recv,在recv函数里协议栈会答复对方一个ack包并且回复数据窗口,告诉对方我可以再接收一些数据,如果服务器重启,那数据自然就丢失了。
苦逼码农 2016-01-29
  • 打赏
  • 举报
回复
自己顶起来吧,up up

4,356

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧