网络通信和UDP协议以及TCP协议

概念:就是组成资源共享之间有所联系  可以是不同的电脑之间进行数据的传递
IP地址:这个就是相当于名字一样是电脑的标志在进行网络通信是第一件是就是用IP来差找需要通信的位置
网络的通信方式有:直接通信就是线和线之间的传递但是需要提前设置IP
使用集线器通信:就是相当于一个排插一样提供接口可以让多台电脑之间进行数据的传递  但这种方式基本被淘汰
使用交换机通信:现在基本使用的是交换机来进行多台电脑的数据传递
使用路由器来进行连接:现在的路由器中基本多含有交换机
在网页中请求数据的过程是:电脑——交换机——互联网——交换机——服务器
MAC地址:在设备与设备之间数据通信时用来标记收发双方的(
IP地址:标记一台电脑用来指引数据包的收发方向的
网络掩码:用来区分ip地址的网络号和主机号

端口号:这个就像是钥匙一样没有这个你就连接不上电脑和app

socker:又叫套接字   是进程之间通信的一种方式   它能实现不同主机间的进程通信

在python中使用socker来进行通信是:
import  socker
socker.socker(Address Family,  Type)
Address Family:可以选择的是AF_INET  这个是用于Internet进程间通信的也是最常使用的   还有AF_UNIX这个是同一台电脑之间进程通信的
Type:套接字类型  可以是SOCK_STREAW(流式套接字 主要用于TCP协议)或者SOCK_DGRAW(数据报套接字,主要用于UDP协议)

基于UDP协议的网络程序发送数据:
import  socker
#  创建一个UDP的socker连接
x = socker.socker(socker.AF_INET, socker.SOCK_DGRAM)
name = 'zhangsan'
addr = ('168.168.0.1' , 8080)  #  IP地址和端口号
#  这里是发送数据
x.sendto(name.encode('utf8'), addr)
#  接受返回来的数据
z = x.recvfrom(1024)  #  限制接受的字节
#  注意接受到的是一个元组
x.close()  # 最后关闭这个连接


基于TCP协议的客户端:
import  socker
#  创建socker连接
x = socker.socker(socker.AF_INET,  socker.SOCK_STREAM)
x.connect(IP地址,端口号)
#  发送数据
x.send(内容.encode(‘utf8’))
#  接受数据
x.recv(1024)
#  关闭数据
x.close()

服务器
x = socker.socker(socker.AF_INET,  socker.SOCK_
address  = ('IP地址',端口号)
x.bind(address)  #  绑定IP地址和端口号
x.accept()# 这个是等待客户端发送数据
y = x.recv(1024)#  这个是接受数据
x.send(内容) # 给客户端返回数据
x.close()  #关闭数据

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 网络编程 一.楔子 你现在已经学会了写python代码,假如你写了两个python文件a.py和b.py,分别去运...
    go以恒阅读 6,481评论 0 6
  • Python是很强大的网络编程工具。Python有很多针对常见网络协议的库,这些库可以使我们集中精力在程序的逻辑处...
    泷汰泱阅读 1,643评论 0 0
  • 第一章 引言和网络编程基础知识 1.1 分别简述OSI参考模型和TCP/IP模型,并阐述他们之间的对应关系 1.2...
    V0W阅读 10,829评论 0 9
  • socket通信原理 socket又被叫做套接字,它就像连接到两端的插座孔一样,通过建立管道,将两个不同的进程之间...
    jiodg45阅读 4,871评论 0 1
  • Linux系统的一大特点是它的网络编程能力十分强大, 学习它, 让我们真正体会网络的魅力! 一. 客户机/服务器模...
    刘元旺阅读 11,580评论 0 5

友情链接更多精彩内容