交易系统开发技能及面试之网络知识

本文详细讲解了TCP/UDP协议、Socket、IP多播和非阻塞socket等网络知识,包括TCP的三次握手过程、异常退出时服务端的链接状态处理、TCP的快生产慢消费机制、MTU概念、TCP与UDP的比较、客户端加入IP多播流的方法,以及select和poll系统的比较。同时探讨了非阻塞socket的优势和在大量链接管理中使用的epoll和IOCP技术。
摘要由CSDN通过智能技术生成

概述

网络知识体系是开发人员都必须具备的,本章主要讲解TCP/UDP协议,Socket,IP多播方式。理解非阻塞socket工作方式和怎样设计一个事件驱动系统。

Q1 为什么总问TCP握手过程

TCP为了保证可靠性,第一步要做的就是保证建立的链接是有效可用的,并且确认双方收到消息的序列号起始,通过序列号处理消息丢失后重发,而我们在设计其他系统的时候,也是可以借鉴这种方式。

第一步:
客户端A发送SYN类型消息给服务端B,消息携带客户端的序列号
第二步:
B响应请求后回SYN-ACK消息表示接收到链接请求,SYN-ACK包分为SYN(携带服务端的序列号),和ACK(确认收到的客户端的序列号)
第三步:
A响应B发过来的SYN-ACK包,并发送ACK(确认收到的服务端的序列号)

通过三次握手,最核心的部分是收发双方都确认通信对端当前的序列号起始位置,当有序列号数据包未确认时,可以重发来确保通信的可靠性。

Q2 当客户端没有通知服务端关闭链接时异常退出,服务端如何处理链接状态?

TCP链接有keepalive标志,当开启keepalive时,tcp会建立一个定时器,当定时时间到时,服务端会发送一个keepalive的探测包,当在配置的时间段内客户端没有回报时,该链接会被认为无效而关闭相关资源。

Q3 tcp是如何处理快生产慢消费的

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值