网络编程四层模型
1. TCP:用来检测网络传输中差错的传输控制协议 IP:负责对不同网路进行互联
2. TCP/IP协议族: HTTP:(Hypetext Transfer Protocol) ARP(Address Resolution Protocol) IP->MAC dos攻击与此有关
3. TCP/IP :面向流,有粘包现象。 UDP:面向包,不粘包。
4. Socket:1)网络通信的抽象描述符 2)自动加头(OS帮忙)
5. Socket是面向网卡的。
6. inet_addr()将点分十进制的字符串转换为网络字节序二进制。 inet_ntoa()将网络字节二进制 -> 点分十进制
7. SSH(安全shell协议)端口号:22 DNS(域名系统)端口号:53 http(超文本传输协议)端口号:80
8. 网络传输数据必须是网络字节序(大端字节序)
主机字节序->网络字节序 htons 网络字节序->主机字节序 ntohs
9. 宏定义只对第一行有效。
10. 服务器一定要桥接:绑定网卡。
11. 网络通信一定要有返回值。
12. 主动端ID(客户端)可bind也可不bind。操作系统自动绑定任意网卡。
13. accept的返回值是接受到的客户端的socket fd。
14. 定义struct sockaddr_in 变量同时需要清空。
15. inet addr:127.0.0.1 回环id(不出本机)