mySc day10

xiaoxiao2021-02-28  97

Socket网络编程     Socket:套接字,即一个编程接口,是一种特殊的文件描述符(everything in UNix is a file)     五要素         协议、本地地址、本地端口、远程地址、远程端口     协议域domain         AF_INET        IPv4(主要)         AF_INET6    IPv6         AF_LOCAL    Unix域     类型type         流式套接字             SOCK_STREAM             提供面向链接、可靠的数据传输服务,数据按字节流、按顺序收发,保证在传输过程中无丢失、无冗余。             TCP协议支持该套接字。         数据报套接字             SOCK_DGRAM             提供面向无链接的服务,数据收发无序,不能保证数据的准确到达。             UDP协议支持该套接字。         原始套接字             SOCK_RAW             允许对低于传输层的     协议         概念:接头暗号         分类             TCP(Transmission Control Protocol)[面向连接]                 数据流                 三次握手/四次握手                 类比                 应用             UDP(User Datagram Peotocol)[无连接]                 数据报                 类比                 分类                     单播(unicast)                     广播(broadcast)                     多播/组播(multicast)                 应用                     网络聊天                     视频会议                     桌面共享     路径         IP:Internet中主机的标识             分类                 32位(IPV4)                 128位(IPV6)             表示形式                 常用点分形式                     IPv4                     IPv6             特例                 通配地址:主机上所有IP,多网卡共用【0.0.0.0】                 回环地址:本地虚拟接口,无网卡可用,用来检查本地网络协议【127.0.0.1】                 广播地址                     受限广播地址【xxx.xxx.xxx.255】                     子网广播地址【xxx.xxx.255.255】                     全子网广播【xxx.255.255.255】             域名                 DNS:ip与域名【电话号码与人名】             端口:区分一台主机接收到的数据包应该转交给哪个进程来进行处理                 查看端口    netstat -apn             类比                 火车站与站台                 飞机场与登机口                 公司与办公室                 银行与窗口柜台                 IP与端口     字节库         大端BE(big endian):将高序字节存储在起始地址             IBM、服务器         小端LE(litter endian):将低序字节存储在起始地址             Intel     字节序转换操作         网络转主机序             ntohs()                 network to host short【端口】                 把unsigned short类型从网络序转换到主机序             ntohl()                 network to host long【IP地址】                 把unsigned long类型从网络序转换到主机序         主机转网络序             htons()                 host to network short                 把unsigned short类型从主机序转换到网络序             htonl()                 host to network long                 把unsigned long类型从主机序转换到网络序         IP地址转换操作             IPv4专用                 点分十进制数串转网络字节序长整型                     int inet_aton(const char* string,struct in_addr*addr)                     in_addr_t inet_addr(const char* strin)【不推荐使用】                 网络字节序长整型转点分十进制数串                     char* inet_ntoa(struct in_addr addr)             IPv4/IPv6通用(推荐)                 点分十进制数串转网络字节序长整型                     int inet_pton(int af,const char* src,void *dst)                 网络字节序长整型转点分十进制数串                     const char *inet_ntop(int af,const void* src,char* dst,socklen_t cnt)    
转载请注明原文地址: https://www.6miu.com/read-94862.html

最新回复(0)