计算机网络-培训

TCP/IP协议族

  • TCP/IP协议族:以TCP,IP协议为核心的协议族。还包括其他各层协议。
    应用层:http dns telnet ftp tftp
    传输层:tcp udp
    网络层:ip ICMP ARP rarp
    数据链路层:ethnet ethnet2 802.3 ppp fr x.25 hdlc
    物理层:比特流
    tcp/ip 是一种网络分层模型 ,将网络分成5层,以上列出了每一层的经典协议。
    分层的作用:封装不必要的内部信息,只对外提供必要的接口,简化操作
    在这里插入图片描述
    ,—

应用层 数据传输单位------>报文
运输层 数据传输单位------>报文段
网络层 数据传输单位------>分组 / 包
数据链路层 传输单位------>帧

TCP:面向/基于连接,可靠,传输。
UDP:不面向/不基于连接,不保证可靠,实时性强。
IP(核心):不基于连接,不保证可靠性。所以 packet 可能损坏。丢失。

当应用层传输文件时,使用FTP协议,要求可靠,所以在运输层必须使用TCP。
当传送话音或者视频点播信息时,优先保证实时性,则选择无连接的UDP。

  • IP 地址由四段组成,每段一个字节,每段最大值为255;一个 IP 地址大小为 4 B。

  • IP 地址由两部分组成,即网络地址主机地址,二者是主从关系。IP地址 = 网络号+主机号

    • 1、网络号 net-id,表示主机(或路由器)所连接到的网络,网络地址表示其属于互联网的哪一个网络。

    • 2、主机号 host-id,它标志该主机(或路由器),主机地址表示其属于该网络中的哪一台主机。

  • IP地址的分类:A,B,C类;特殊地址 D,E; 全 0 和全 1 均保留不用。
    IP地址 = 网络号+主机号

在这里插入图片描述
,—我司有一个C类IP。

  • An orgznization can subdivide it’s host address space into groups called subnets.把主机地址再分组成子网。

在这里插入图片描述
,—
在这里插入图片描述

,—上图分为子网1,2…,每个子网内还有数个 host。
IP 由专门的国际组织来分配。IP 地址的 net-id 越短,那么 host-id 就越长,能容纳的主机越多。

  • 子网掩码:也是32位,用来指明一个IP地址所标示的主机处于哪个子网中,就是将某个IP地址划分成网络地址和主机地址两部分。见收

  • 数据发送的模式:
    unicast----> one to one-------->support by Class A, B, C addresses
    broadcast----> one to all------>supported by 255.255.255.255, eg
    multicast----> one to many—>supported by Class D addresses

  • DHCP
    dynamtic host configuration protocal
    动态地址分配。
    在这里插入图片描述
    ,—

IP数据包

  • IP数据包的内容

    • 源地址和目的地址
    • 协议号:比如 TCP 是 6,UDP 是17。
    • time 在to live:防止数据包 Packet 在一个死循环里面 死循环。每次经过一个节点计数器就1.如设置值为5,那么经过五次就自动丢包。
  • IP数据包的结构

在这里插入图片描述
,—
分成一段一段的数据传送的原因是 MTU (maximum transmission unit)的限制;链路层一次能传送的最大长度。
同一个 IP 包不同的分片它们的 ID 是一样的,ID就是用来 fragment 和 reassembly。但是 Fragment offset是不一样的(偏移)。
分成的每一段数据格式都是上面的 IP数据包格式;
若有其中一个包丢了,之前所有的包都被丢弃。sender会受到一个 ICMP message。(反正只要出错就像sender 发 ICMP message)

端口 PORT

用正整数来表示不同的端口,收到包后根据端口号传给上一层。IP是全球范围内的,而端口是在一个host内部的。只要通信的双方 host 的端口是统一的,那么就可以正常通信。
如20,21是FTP的端口号,DNS是53,TFTP是69。

DNS 域名系统

访问某个网站时,不用 ip,而是用它的域名。
DNS 把域名转行成 ip。
域名在因特网上用来代替 IP 地址,因为 IP 地址没有实际含义,人们不容易记住,所以用有含义的英文字母,小数点来代替。在网络上,专门有**DNS(域名服务器)**来进行域名←→IP 的相互转换,人们输入域名,在DNS上转换为IP,才能找到相应的服务器,打开相应的网页。

UDP数据报格式

在这里插入图片描述
,—
不是基于连接,不可靠
多用于实时应用

TCP transmission control control 传输控制协议

  • 基于连接的,可靠的,全双工
  • 若数据没能送达、顺序不对、重复,那么连接将被取消
  • 有很大开销是用来保证数据正确传输,所以效率低。牺牲效率来保证传输安全。
  • 基于连接:在数据传输之前,一定要先建立好一个虚拟的连接。
  • 可靠的:任何一次数据传输都会由接收方来确认。所以不适合传输实时性数据。

可靠并不意味着数据一定不会出错,而是当发生错误时,能定位错误
发送方发送完一次数据后如果没有在规定时间内收到握手消息,那么发送方会重发这次信息。

  • 的概念:每个分包编号,如 sender 发送了 10 次数据,若接收方发现第五个包未成功接收,只对第四个包 ack ,那么从第五个开始重发。

  • full duplex 全双工,tcp 允许数据在一个虚拟的连接上进行双向传输

  • TCP implementation 有三次握手three - way handshake。要传输的数据被 OS 划分成包。每个包都有不同的数字,被接收的包都会

  • TCP packet的组成

    • source + destination ports
    • sequence number(used to order packets)
    • ack number(used to verify packets are received)
      TCP packet 交给 IP 来 deliver
      在这里插入图片描述
      ,—
  • MSS:maximum segment size

  • Window:每一个接受回复都包含一个window域,告诉发送方自己能接受最多的字节数目

  • TCP层不知道上一层什么时候需要TCP的数据,TCP把它接收到的数据放在缓存中供上一层取用

  • Each TCP / IP address includes

    • internet address
    • protocol(TCP / UDP )
    • Port number
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值