Author: 楚格
2018-11-17 22:45:39
IDE: Pycharm2018.02 Python 3.7
KeyWord : socket
Explain:
------------
--

1 # coding=utf-8 2 #--------------------------------- 3 ''' 4 # Author : chu ge 5 # Function: 6 # 7 ''' 8 #--------------------------------- 9 ''' 10 # -------------------------------- 11 # 导入模块 12 # 1.系统库 13 # 2.第三方库 14 # 3.相关定义库 15 # -------------------------------- 16 ''' 17 # 1.系统库 18 import sys 19 import os 20 21 #2.第三方库 22 23 24 25 26 ''' 27 ============================================================================ 28 #》》》》》》》》》》》》》》 29 socket 知识聚合 30 31 ---------------------------------------------- 32 33 ----------------------- 34 1 基础知识 35 36 ----------------------- 37 1.1 常用的网络协议 38 39 HTTP(万维网服务) 40 FTP(文件传输) 41 SMTP(电子邮件) 42 43 ----------------------- 44 1.1.1 TCP/IP协议族 45 1.应用层 46 2.传输层 47 3.网络层 48 4.数据链路层 49 50 ----------------------- 51 1.1.2 端口号 52 53 端口是通过端口号来标记,端口号只有整数,范围是0-65535 54 55 端口分配 56 well known ports 57 80端口分配给 HTTP服务 58 21端口分配给 FTP服务 59 60 动态端口 61 1024 - 65535 62 动态分配指系统进程或者应用程序需要进行网络通信时,主机从可用端口号中分配一个供他使用。 63 netatat -an 查看端口号状态 64 65 端口作用:区别进程 !!! 66 67 ----------------------- 68 1.1.3 IP地址 69 70 地址就是用来标记地点 71 IP地址:用来在网络中标记一台电脑的一串数字,在本地局域网上是唯一的。 72 73 每个IP地址包括二部分:网络地址和主机地址 74 类别 网络号 主机号 32 75 - A 0 -- 7 -- 24 - A 有126个网络,每个网络1677214 个主机 76 - B 10 -- 14 -- 16 - B 有16384个网络,每个网络 65534个主机 77 - C 110 -- 21 -- 8 - C 有2097152个网络,每个网络 254 个主机 78 - D 1110 -- -- - D 用于多点广播 79 - E 11110-- -- - E 地址保留 80 81 A类: 1.0.0.1 - 126.255.255.254 82 B类: 128.1.0.1 - 191.255.255.254 83 C类: 192.0.1.1 - 223.255.255.254 84 85 私有IP:国际规定一部分IP地址用于我们的局域网使用,即私网IP 86 不在公网中使用,他们的范围: 87 10.0.0.0 - 10.255.255.255 88 172.16.0.0 - 172.31.255.255 89 192.168.0.0 - 192.168.255.255 90 91 92 IP地址:回路测试 93 127.0.0.1 - 127.255.255.255 94 如,127.0.0.1可以代表本机IP地址, 95 用http://127.0.0.1 就可以测试本机中配置的Web服务器。 96 97 ----------------------- 98 1.1.4 子网掩码 99 100 子网掩码作用:就是将某个IP地址划分网络地址和主机网部分,子网掩码的设定必须循序一定的规则。 101 与IP地址相同,子网掩码的长度也就是32位 102 左边是网络位,用“1”表示 103 右边是主机位,用“0”表示 104 IP地址:192.168.1.1 子网掩码 255.255.255.0 105 106 常用IP地址子网掩码:255.255.255.0 107 108 ----------------------- 109 1.2 socket 110 111 本地的进程间通信(IPC) 112 * 队列 113 * 同步(互斥锁,条件变量) 114 115 socket 套接字 是进程间通信的一种方式。 116 117 ----------------------- 118 1.2.1 创建 socket 119 socket.socket(addressFamily,Type) 120 121 addressFamily: 选择AF_INET(用于Internet进程间通讯)或者 122 选择AF_UNIX(用于同一台机器间进程通信),选择AF_INET最常用 123 Type : SOCK_STREAM(流式,TCP协议) 或 SOCK_DGRAM(数据报,UDP协议) 124 125 ----------------------- 126 1.2.2 UDP (速度快,可能会丢数据) 127 128 UDP:用户数据报协议,是一个无连接的简单的面向数据报的运输层协议。 129 130 131 132 # ============================================================================ 133 ''' 134 # ============================================================================ 135 # 测试专用 136 # ============================================================================ 137 ''' 138 if __name__ == "__main__":
--
---------------