持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第23天,点击查看活动详情
1、ACK 是TCP报头的控制位之一,对数据进行确认。确认由目的端发出, 用它来告诉发送端这个序列号之前的数据段都收到了。 比如确认号为X,则表示前X-1个数据段都收到了,只有当ACK=1时,确认号才有效,当ACK=0时,确认号无效,这时会要求重传数据,保证数据的完整性。
2、SYN 同步序列号,TCP建立连接时将这个位置1。
3、FIN 发送端完成发送任务位,当TCP完成数据传输需要断开时,,提出断开连接的一方将这位置1。
4、TCP与UDP区别总结: TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接 TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保 证可靠交付 TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的 UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等) 每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信 TCP首部开销20字节;UDP的首部开销小,只有8个字节 TCP的逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道
5、TCP/IP 物理层: 作用:定义一些电器,机械,过程和规范,如集线器; PDU(协议数据单元):bit/比特 设备:集线器HUB; 注意:没有寻址的概念; 数据链路层: 作用:定义如何格式化数据,支持错误检测; 典型协议:以太网,帧中继(古董级VPN) PDU:frame(帧)设备:以太网交换机; 备注:交换机通过MAC地址转发数据,逻辑链路控制; 网络层: 作用:定义一个逻辑的寻址,选择最佳路径传输,路由数据包; 典型协议:IP,IPX,ICMP,ARP(IP->MAC),IARP; PDU:packet/数据包; 设备:路由器 备注:实现寻址 传输层: 作用:提供可靠和尽力而为的传输; 典型协议:TCP,UDP,SPX,port(65535个端口),EIGRP,OSPF, PDU:fragment 段; 无典型设备; 备注:负责网络传输和会话建立; 会话层: 作用:控制会话,建立管理终止应用程序会话; 典型协议:NFS, SQL, ASP, PHP, JSP, RSVP(资源源预留协议), windows, 备注:负责会话建立; 表示层: 作用:格式化数据; 典型协议:ASCII, JPEG. PNG, MP3. WAV, AVI, 备注:可以提供加密服务; 应用层: 作用:控制应用程序; 典型协议:telnet, ssh, http, ftp, smtp, rip, BGP, (未完待续) 备注:为应用程序提供网络服务; Q:什么时候有PDU?
A:当需要跟别人通信时候才有。
6、死锁产生的4个必要条件? 产生死锁的必要条件: 互斥条件: 进程要求对所分配的资源进行排它性控制,即在一段时间内某资源仅为一进程所占用。 请求和保持条件: 当进程因请求资源而阻塞时,对已获得的资源保持不放。 不剥夺条件: 进程已获得的资源在未使用完之前,不能剥夺,只能在使用完时由自己释放。 环路等待条件: 在发生死锁时,必然存在一个进程–资源的环形链。