“这是我参与8月更文挑战的第6天,活动详情查看:8月更文挑战” IPv4 点分十进制
ipconfig windows查看网络配置信息 ifconfig linux ios 查看网络配置信息 1 建立网络连接前要先判断是否可以连接 使用ping命令 ping 192.168.13.25
2 还要有端口号 0-1023 知名程序占有 动态端口号1024-65535最好使用8000后的(以免冲突)
3 面向连接TCP可靠连接/UDP不可靠连接 区别在是否校验 UDP快网络不稳定会丢数据 TCP 面向连接 可靠 采用发送应答 超时重传 错误检验 流量控制和堵塞管理 都是为了数据传输的可靠性 字节流 转换为字节
4 socket 套接字 进程间通讯的一个工具
5 IP 端口 TCP socket编程
B/S b浏览器s 服务器 C/S =>client service客户端服务器端
TCP客户端开发=>五步走 1、创建套接字对象(IPV4/TCP协议) 2、和服务器端套接字建立连接(参数要求是一个元组类型的数据) 3、发送数据到服务器端(要求数据必须是字节流类型) 4、接收从服务器端返回的数据recv(字节大小) 5、关闭套接字对象
TCP服务器端开发=>七步走 import socket
1、创建套接字对象
tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
参数1: 表示当前套接字
参数2: 设置端口号复用选项
参数3: 设置端口号复用选项对应的值
tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True)
2、绑定IP和端口(注意:参数比较特殊,要求是一个元组类型的数据)
绑定的IP地址可以省略不写,代表绑定本机
tcp_server_socket.bind(('', 8080))
3、开始监听
tcp_server_socket.listen(128)
4、准备接收客户端连接请求,产生新的套接字
conn_socket,ip_port = tcp_server_socket.accept()
5、接收客户端数据
print('客户端IP+端口:', ip_port) recv_data = conn_socket.recv(1024).decode('gbk') print('客户端发送过来的数据:', recv_data)
6、处理并返回数据给客户端
conn_socket.send('信息已收到, over, over!'.encode('gbk'))
7、关闭套接字对象
conn_socket.close() tcp_server_socket.close()