c/c++ 网络通信 面试三大问题简介

socket基础:

socket叫做套接字,用来表示ip、port,还可以指定协议

socket五元组:协议,本地ip、port,远程ip,port

OSI 7层协议:

物理层:0-1 比特流 ,集线器

数据链路层:MAC 封装、解封装,网卡、交换机

网络层:IP 封装、解封装, 路由器

传输层:协议和端口 TCP、UDP

会话层:建立通路

表示层:计算机能识别<-->人可以识别

应用层:终端APP

TCP和UDP的区别:

TCP 协议:传输控制协议

特点:有连接、安全的、有序、字节流、比udp慢 (报头)

【安全可靠,保住数据完整:通过确认序号来保证丢包重传】

UDP: 用户数据报协议

特点:无连接、不安全、无序、数据报、比tcp快

大小端转化:

C、C++程序默认小端,而网络字节序默认大端

htonl: host to network long 小端转大端,按long转

htons: host to network short 小端转大端,按short转

经验分享 程序员 微信小程序 职场和发展