Python 网络编程

本文介绍了网络编程的基础知识,包括C/S和B/S架构、网络的目的和定义、IP地址分类、网络通信过程以及TCP/IP协议。讲解了IPv4的地址结构,强调了A类、B类、C类IP地址的区别,还提到了D类和E类IP地址的特殊用途。此外,文章还简述了网络通信的OSI模型和端口的概念。最后,探讨了Socket的基本概念,以及TCP和UDP协议的特点和应用场景。
摘要由CSDN通过智能技术生成

网络编程

引子

假如有两个脚本,foo.py, bar.py,分别运行都可以正常运行。但是现在想从两个程序间传递一个数据。

  • 同一台电脑
    • 创建一个文件,将foo.py的数据读入文件中,bar.py从文件中读取数据。
  • 不同电脑
    • 该怎么做

软件的开发架构

1. C/S架构

C/S,即Client和Sever ——>客户端和服务器端架构

2. B/S架构

B/S,即Browser和Server ——>浏览器端和服务器端架构

什么是网络

网络就是一种辅助双方或者多方能够连接在一起的工具。

伴随着网络发展,人们使用了很多通信方法,有些已不再使用,现在使用最广泛的是TCP/IP(Transmission Control Protocol/Internet Protocol)

TCP/IP是标准的协议,其可以使世界范围内的计算机通过Internet或者本地网络通信。

TCP/IP事实上是一些协议(protocols)的合集。当前大多数使用中的通信都使用TCP协议。

Internet是在一些共享的线路上发送数据’的。例如:在您的计算机上也许同时运行着几个应用程序,如Web浏览器、通讯软件等程序,而您只须通过一条单一的线路来连接互联网。上面所有的程序都共享这个连接,简单地说,用户往往不会觉察到这个共享的发生。

1. 目的

  • 使用网络把多方链接在一起,然后进行数据传输
  • 为了让不同电脑的软件可以互相传递数据,借助网络的功能

2. 网络编程的定义

让不同电脑中的软件能够进行数据传递,即网络中不同主机进程间的通信。

地址

1. 生活中的地址与标识

不同的网络中,采用唯一的标识来区分不同的主体,比如车牌号、建筑物地址、电话号码、员工编号等等

一台电脑怎么找到很多电脑中的一台呢?

警察怎么找到嫌疑犯的?

2. ip地址的作用

ip地址:用来在网络中标记一台电脑,比如192.168.1.1;在同一网络中是唯一的。

同一网络:好比班级编号,球队编号。

同一网络:例如同一个局域网, 一个教室里。

3. IP地址分类

目前ip地址主要分量足

  • ipv4,32位二进制构成m。分成四段,每段范围0-255(2的8次方,四个字节)
  • ipv6,128位二进制构成

每一个IP包含两部分:

  • 网络号
  • 主机号

类似电话号码由区号+电话主机号构成。

无线局域网适配器 WLAN:

   连接特定的 DNS 后缀 . . . . . . . :
   IPv6 地址 . . . . . . . . . . . . : 2001:250:6405:6005:b16d:8e5:90cd:e0b3
   临时 IPv6 地址. . . . . . . . . . : 2001:250:6405:6005:79f6:d9c:ceb4:bbad
   本地链接 IPv6 地址. . . . . . . . : fe80::b16d:8e5:90cd:e0b3%5
   IPv4 地址 . . . . . . . . . . . . : 192.168.1.146
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : fe80::22a:6aff:fefa:ff3c%5
                                       192.168.1.1

(1) IPv4可提供4,294,967,296个地址,IPv6将原来的32位地址空间增大到128位,数目是2的128次方。能够对地球上每平方米提供6×1023个网络地址,在可预见的将来是不会耗尽的。   
(2) IPv4 使用地址解析通讯协议 (ARP) ,IPv6使用用多点传播 Neighbor Solicitation 消息取代地址解析通讯协议 (ARP) 。   
(3) IPv4 中路由器不能识别用于服务质量的QoS 处理的 payload。IPv6中路由器使用 Flow Label 字段可以识别用于服务质量的 QoS 处理的 payload。      
(4) IPv4的回路地址为: 127.0.0.1,IPv6的回路地址为 : 000:0000:0000:0000:0000:0000:0000:0001 可以简写为 ::1。   
(5) 在IPv4中,动态主机配置协议( Dynamic Host ConfigurationProtocol,DHCP)实现了主机IP地址及其相关配置的自动设置。一个DHCP服务器拥有一个IP地址池,主机从DHCP服务器租借IP地址并获得有关的配置信息(如缺省网关、DNS服务器等),由此达到自动设置主机IP地址的目的。IP v6继承了IPv4的这种自动配置服务,并将其称为全状态自动配置(stateful autoconfiguration)。 m.pcwenku.com 供稿   
(6) IPv4使用 Internet 群组管理通讯协议 (IGMP) 管理本机子网络群组成员身份,IPv6使用 Multicast Listener Discovery (MLD) 消息取代 IGMP。   
(7) 内置的安全性。IPSec由IETF开发是确保秘密、完整、真实的信息穿越公共IP网的一种工业标准。IPsec不再是IP协议的补充部分,在IPv6中IPsec是IPv6自身所具有的功能。IPv4选择性支持IPSec,IPv6自动支持IPSec。   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值