启名网,马国贤 杨秀蓉,李鸾英
网络就是一种辅助双方或者多方能够连接在一起的工具
ip地址用来 标记网络上的一台电脑 比如 192.168.1.1 ;在本地局域网上是唯一的
ipv4,是互联网协议(internet protocol,ip)的第四版,也是第一个被广泛使用,构成现今互联网技术的基础
的协议。
ipv6是internet protocol version 6的缩写,其中internet protocol译为“互联网协议”。ipv6是ietf(互联网工程任
务组,internet engineering task force)设计的用于替代现行版本ip协议(ipv4)的下一代ip协议,号称可以为
全世界的每一粒沙子编上一个网址 。
由于ipv4最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展。ipv6的使用,不仅能解决网络
地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍。
每一个 ip 地址包括两部分:网络地址和主机地址
跟多分类请大家查资料
端口是通过端口号来标记的,端口号只有整数,范围是从0到65535
端口号不是随意使用的,而是按照一定的规定进行分配。这里只介绍一下知名端口和动态端口
知名端口号
知名端口是众所周知的端口号,范围从0到1023
可以理解为,一些常用的功能使用的号码是估计的,好比 电话号码110、10086、10010一样。一般情况下,如果一个程序需要使用知名端口的需要有root权限80端口分配给http服务 443 端口分配给https服务 ...
动态端口
动态端口的范围是从1024到65535。动态分配是指当一个系统程序或应用程序程序需要网络通信时,它向主机申请一个端口,主机从可用的端口号
中分配一个供它使用。
ip地址标识网络中的一台主机,端口号标识这台主机上的一个服务 ( 应用程序 )
网络链接通讯的本质其实就是不同电脑上的进程之间的通讯
先来理解几个名词
通讯: 运行的程序之间的数据共享
进程: 每个正在运行的程序和占用的资源被称为进程
其实tcp/ip协议族已经帮我们解决了这个问题,网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“协议+端口”可以唯一标识主机中的应用进程(进程)。
这样利用“ip地址,协议,端口”就可以标识网络的进程了,网络中的进程通信就可以利用这个标志与其它进程进行交互
import socket def main(): # 创建套接字 udp_socket = socket.socket(socket.af_inet, socket.sock_dgram) # 绑定ip+port # 获取本地主机名 host = socket.gethostname() port = 60000 # 绑定端口号 udp_socket.bind((host, port)) # 发数据 接收数据的ip地址 端口号 dest_addr = ('192.168.43.156',8080) # 从键盘获取数据 strinput = input('请输入发送的数据') while : if strinput == 'q': break # 发送数据到指定的程序里面 # 第一个参数是发送的数据 第二个参数是ip+port # sendto 是udp 的发送方法 udp_socket.sendto(strinput.encode('utf-8'),dest_addr) #关闭套接字 udp_socket.close() if __name__ == "__main__": main()
还需一个网络调试工具
windows 请自己百度
如果有什么问题请大家在下方评论,我会改正的!—_—!
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
python求numpy中array按列非零元素的平均值案例
网友评论