Python网络编程(二):TCP/IP概念知多少

在这里插入图片描述


计算机网络的出现比互联网(Internet)是要早很多的

计算机之间想要实现互联,必须得规定一个互相之间通信的规则(即协议)。而为了将全世界的计算机连接起来,就必须规定一套全球通用的协议,互联网协议族应运而生。

Internet = Inter + net

互联网(Internet)即连接网络的网络

任何私有网络只要支持这个协议,就可以进入互联网

互联网的协议族包含了成百上千的协议标准,其中最重要的就是TCP/IP协议


【1】IP协议

IP地址:互联网上每一个计算机的唯一标识

例:123.123.123.123

若一台计算机同时接入了多个网络(接入了多个路由器),则该计算机会有很多的IP地址

IP地址对应的实际上是计算机网络的接口,通常是网卡

IP协议负责将数据从一台计算机通过网络发送到另一台计算机。其中数据被分割成一块一块的,通过IP数据包发送出去。由于互联网链路复杂,两台计算机之间经常有多条线路,因此,路由器就负责决定如何把一个IP包转发出去

IP数据包的特点:

  • 发送
  • 途径多个路由
  • 不能保证数据包是否到达
  • 不能保证按顺序到达
    在这里插入图片描述

【2】IPv4和IPv6

IPv4:是一个32位整数数字表示

例:192.168.0.1

IPv6:是一个128位整数字符串表示

例:2001: 85阿: 0042: 1000: 8a2e: 0370: 7334


【3】TCP协议

TCP协议是建立在IP协议之上的,TCP协议负责在两台计算机之间建立可靠的连接保证数据包按顺序到达

TCP协议会通过握手建立连接,然后对每一个IP数据包编号,确保数据包会按顺序到达目的地,若中途数据包丢失,则会自动重发

TCP报文除了包含要传输的数据之外,还包含了源端口号和目标端口号

因为一台计算机会同时跑许多程序,一个TCP报文传输过来后,需要告知具体是传送给哪个程序的,要通过进程端口决定

一个进程也可能同时与多个计算机建立连接,因此会申请很多端口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值