面经——网络

套接字

https://www.cnblogs.com/lixiaoliuer/p/6543968.html
不会阻塞的函数不阻塞bind和listen。

TCP和UDP的区别:

1)TCP提供面向连接的传输,通信前要先建立连接(三次握手机制);UDP提供无连接的传输,通信前不需要建立连接。
2)TCP提供可靠的传输(有序,无差错,不丢失,不重复);UDP提供不可靠的传输。
3)TCP面向字节流的传输,因此它能将信息分割成组,并在接收端将其重组;UDP是面向数据报的传输,没有分组开销。
4)TCP提供拥塞控制和流量控制机制;UDP不提供拥塞控制和流量控制机制。

简述 TCP/IP 四层协议

应用层决定这次通信的应用类型,比如说FTP、DNS、SMTP等等,同时HTTP协议也属于应用层的范围。通俗来讲,应用层决定这一次通信要干嘛。
传输层:传输层提供两台计算机之间的数据传输,传输层中包含着两个很叼的协议,分别是TCP和UDP协议。面试中经常提及的三次握手,四次挥手就是TCP协议的部分内容
网络层:网络层则是用来处理这些流动的数据包,也就是如果把相应的数据包路由到指定的地点,为通信时的网络传输选择传输路线
数据链路层:数据链路层包含了软件与硬件的接口部分,以及各种网络设备的硬件,也就是整个网络通信过程中最底层的基础设施

OSI七层

https://www.cnblogs.com/qishui/p/5428938.html

TCP的三次握手与四次挥手

https://blog.youkuaiyun.com/qq_38950316/article/details/81087809
是否可以两次握手

有哪些协议是 tcp 或 udp 实现的,举例说明

TCP应用(1)FTP:文件传输协议;(2)SSH:安全登录、文件传送(SCP)和端口重定向;(3)Telnet:不安全的文本传送;(4)SMTP:简单邮件传输协议Simple Mail Transfer Protocol (E-mail);(5)HTTP:超文本传送协议 (WWW);(6)DNS都有
UDP应用:(1)流媒体;(2)NTP是用来使计算机时间同步化;(3)DHCP:动态主机配置协议,动态配置IP地址;(4)DNS都有

tcp可靠性传输如何实现

(1)确认应答机制(ACK):TCP将每个字节的数据都有序列号。确认序号=序号+1。(2)超时重传机制: 。(3)链接管理:tcp链接需要三次握手,简历可靠链接。(4)流量控制:。(5)拥塞控制:。

TCP超时与重传机制

其基本原理:在发送一个数据之后,就开启一个定时器,若是在这个时间内没有收到发送数据的ACK确认报文,则对该报文进行重传,在达到一定次数还没有成功时放弃并发送一个复位信号。
超时的时间设定不宜过大也不易过小,根据网络中的RTT(传输往返时间)来自适应调整的。

路由器与交换机

路由器工作在网络层,依靠ip,交换机工作在链路层依靠mac。

https://blog.youkuaiyun.com/baidu_32045201/article/details/78305586

TCP和UDP端口号

tcp和udp可以使用相同的port号且tcp和udp可以同时使用相同的port号
但一台设备里,tcp协议里port号必须有唯一性。同样,udp协议里port号必须有唯一性。
OS接收到报文后,根据IP字段里面的内容可以区分出是什么协议报文。然后根据不同协议,就如不同的协议栈处理,同一个协议栈里port号,必须是唯一的。

ARP

arp提供从网络地址(IP)到相关硬件地址(mac)的动态映射。arp缓存未接口维护最新的映射关系。
当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP数据包,该数据包包括的内容有:源主机IP地址,源主机MAC地址,目的主机的IP地址。
当本网络的所有主机收到该ARP数据包时,首先检查数据包中的IP地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。
源主机收到ARP响应包后。将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。
广播发送ARP请求,单播发送ARP响应。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值