【python】进阶--->网络编程(一)

一、网络编程

网络 : 为了联络多方然后进行通信,将数据从一方传递给另一方.
网络协议 : 不同计算机只需要通过联网,那么就可以相互进行传递数据,那么不同种类的计算机之间就和不同语言的人之间沟通一样,需要一种大家都认可都遵循的协议即可.
那么计算机都遵循的网络通信协议叫tcp/ip协议.(互联网其实有上百种协议标准,但是最重要的两种就是tcp和ip协议,所以大家把互联网的协议简称为tcp/ip协议.)

http协议(超文本传输协议)

浏览器通过网络和web服务器进行通信,浏览器是如何知道浏览器想要什么数据,服务器返回给浏览器的数据,浏览器是如何区分到底是什么格式的,这些都需要事先约定好,不然浏览器和服务器是无法进行通信.
责解决通信数据格式的技术http协议.
http协议是互联网上应用最为广泛的一种网络协议,用于web服务器传输超文本到本地浏览器的传输协议.可以使浏览器更加高效.不仅保证了计算机正确快速的传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先展示(文本先于图片).
无状态的协议 : http协议无状态的,指的是对于事务的处理没有记忆能力,服务器不知道客户端是什么状态.

web工作流程

【python】进阶--->网络编程(一)_第1张图片

查看本机计算机ip地址:
在这里插入图片描述

ip地址 : 是互联网协议地址,为互联网上每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异.
域名 : 是用一串用点分隔的名字组成的互联网上某一台或者计算机组的名字.用于在数据传输时标识计算机的位置.
DNS : 由于我们用域名来标识计算机的位置,但是网络上唯一标识主机的是ip地址,所以需要记录一个域名和一个ip地址的对应关系,这个对应关系就存储在DNS服务器中.当我们向DNS发出请求时,DNS会返回域名所对应的ip地址.

ip地址分类

最初设计互联网时,为了方便寻址以及层次化构造网络,每个ip地址都有两个标识码(id),即网络id和主机id.同一个物理网络上的所有主机都适用同一个网络id,网络上的每一个主机有一个主机id与其对应.
A类地址 : 由1个字节的网络地址和3个字节的主机地址构成.
地址范围 : 1.0.0.1-126.255.255.254
B类地址 : 两个字节的网络地址和两个字节的主机地址构成
地址范围 : 128.0.0.1-191.255.255.254
C类地址 : 由3个字节的网络地址和1个字节的主机地址构成.
地址范围 : 192.0.0.1-223.255.255.254
D类地址 : 多播地址(在这个网络中应用接收到一个分组的数据)
地址范围 : 224.0.0.1-239.255.255.254
E类地址 : 为将来使用保留.
地址范围 : 240.0.0.1-255.255.255.254

私有ip : 国际规定一部分ip用于局域网使用,属于私网ip,不在公网使用.
10.0.0.0-10.255.255.255
172.16.0.0-172.31.255.255
192.168.0.0-192.168.255.255

注意 : 127.0.0.1-127.255.255.254用于测试.127.0.0.1代表本机ip地址.

端口

大多数操作系统支持多进程同时运行,那么不知道数据会传输给主机上的哪一个进程,就需要使用端口来识别. 端口号是一个整数:0-65535
知名端口 : 80是分配给http服务的 21是分配给ftp服务的
动态端口 : 当一个系统进程或者应用程序需要网络通信时,会向主机申请一个端口,主机从可用的端口中分配一个供它使用. 怎么查看端口状态 : netstat -an (你访问一个服务器的端口号是80,但是你的电脑可能是其他的端口号.)

关于Python网络编程(一)的介绍今天就到这里啦,后续我会为大家介绍网络编程(二)的相关知识哦~
关注我,带你领略Python的风采~

你可能感兴趣的:(python,网络,开发语言,pycharm)