TCP/IP协议

这段时间不忙,一直在学习计算机基础知识的,整理整理知识,为自己未来打下夯实的基础,gogogogo!

TCP/IP协议是因特网的通信协议。

TCP/IP 通信协议是对计算机必须遵守的规则的描述,只有遵守这些规则,计算机之间才能进行通信。

什么是 TCP/IP?

  • TCP/IP 是供已连接因特网的计算机进行通信的通信协议。
  • TCP/IP 指传输控制协议/网际协议([mark]Transmission Control Protocol / Internet Protocol[/mark])。
  • TCP/IP 定义了电子设备(比如计算机)如何连入因特网,以及数据如何在它们之间传输的标准。

在 TCP/IP 内部

在 TCP/IP 中包含一系列用于处理数据通信的协议:

  • TCP (传输控制协议) – 应用程序之间通信
  • UDP (用户数据报协议) – 应用程序之间的简单通信
  • IP (网际协议) – 计算机之间的通信
  • ICMP (因特网消息控制协议) – 针对错误和状态
  • DHCP (动态主机配置协议) – 针对动态寻址

TCP 使用固定的连接

TCP用于应用程序之间的通信。

当应用程序希望通过TCP与另一个应用程序之间通信的时候,它会发送一个通信请求。这个请求必须被送到一个确切的地址,在双方‘握手’之后,TCP将在两个应用程序之间建立一个全双工的通信。

这个全双工的通信将占用两个计算机之间的通信线路,直到它被一方或双方关闭为止。

UDP 和 TCP 很相似,但是更简单,同时可靠性低于 TCP。

IP是无连接的

IP用于计算机之间的通信。

IP 是无连接的通信协议。它不会占用两个正在通信的计算机之间的通信线路。这样,IP 就降低了对网络线路的需求。每条线可以同时满足许多不同的计算机之间的通信需要。

通过 IP,消息(或者其他数据)被分割为小的独立的包,并通过因特网在计算机之间传送。

IP 负责将每个包路由至它的目的地。

IP 路由器

当一个 IP 包从一台计算机被发送,它会到达一个 IP 路由器。

IP 路由器负责将这个包路由至它的目的地,直接地或者通过其他的路由器。

在一个相同的通信中,一个包所经由的路径可能会和其他的包不同。而路由器负责根据通信量、网络中的错误或者其他参数来进行正确地寻址。

TCP/IP

TCP/IP 意味着 TCP 和 IP 在一起协同工作。

TCP 负责应用软件(比如您的浏览器)和网络软件之间的通信。

IP 负责计算机之间的通信。

TCP 负责将数据分割并装入 IP 包,然后在它们到达的时候重新组合它们。

IP 负责将包发送至接受者。

网际互联及OSI七层模型:

物理层、数据链路层、网络层、传输层、表示层、会话层、应用层

  • 物理层
    作用:定义一些电器,机械,过程和规范,如集线器;

    PDU(协议数据单元):bit/比特

    设备:集线器HUB;

    注意:没有寻址的概念;

  • 数据链路层
    作用:定义如何格式化数据,支持错误检测;

    典型协议:以太网,帧中继(古董级VPN)

    PDU:frame(帧)

    设备:以太网交换机;

    备注:交换机通过MAC地址转发数据,逻辑链路控制;

  • 网络层
    作用:定义一个逻辑的寻址,选择最佳路径传输,路由数据包;

    典型协议:IP,IPX,ICMP,ARP(IP->MAC),IARP;

    PDU:packet/数据包;

    设备:路由器

    备注:实现寻址

  • 传输层:
    作用:提供可靠和尽力而为的传输;

    典型协议:TCP,UDP,SPX,port(65535个端口),EIGRP,OSPF,

    PDU:fragment 段;

    无典型设备;

    备注:负责网络传输和会话建立;

  • 会话层:作用:控制会话,建立管理终止应用程序会话;

    典型协议:NFS, SQL, ASP, PHP, JSP, RSVP(资源源预留协议), windows,

    备注:负责会话建立;

  • 表示层:作用:格式化数据;

    典型协议:ASCII, JPEG. PNG, MP3. WAV, AVI,

    备注:可以提供加密服务;

  • 应用层:作用:控制应用程序;

    典型协议:telnet, ssh, http, ftp, smtp, rip, BGP

    备注:为应用程序提供网络服务;

Q:什么时候有PDU?

A:当需要跟别人通信时候才有。

TCP/IP 寻址

TCP/IP 使用 32 个比特或者 4 组 0 到 255 之间的数字来为计算机编址。

IP地址

每个计算机必须有一个 IP 地址才能够连入因特网。

每个 IP 包必须有一个地址才能够发送到另一台计算机。

IP 地址包含 4 组数字:

TCP/IP 使用 4 组数字来为计算机编址。每个计算机必须有一个唯一的 4 组数字的地址。

每组数字必须在 0 到 255 之间,并由点号隔开,比如:192.168.1.60。

IP V6

IPv6 是 “Internet Protocol Version 6” 的缩写,也被称作下一代互联网协议,它是由 IETF 小组(Internet 工程任务组Internet Engineering Task Force)设计的用来替代现行的 IPv4(现行的)协议的一种新的 IP 协议。

我们知道,Internet 的主机都有一个唯一的 IP 地址,IP 地址用一个 32 位二进制的数表示一个主机号码,但 32 位地址资源有限,已经不能满足用户的需求了,因此 Internet 研究组织发布新的主机标识方法,即 IPv6。

在 RFC1884 中(RFC 是 Request for Comments document 的缩写。RFC 实际上就是 Internet 有关服务的一些标准),规定的标准语法建议把 IPv6 地址的 128 位(16 个字节)写成 8 个 16 位的无符号整数,每个整数用 4 个十六进制位表示,这些数之间用冒号(:)分开,例如:

686E:8C64:FFFF:FFFF:0:1180:96A:FFFF

冒号十六进制记法允许零压缩,即一串连续的0可以用一对冒号取代,例如:

FF05:0:0:0:0:0:0:B3可以定成:FF05::B3

为了保证零压缩有一个清晰的解释,建议中规定,在任一地址中,只能使用一次零压缩。该技术对已建议的分配策略特别有用,因为会有许多地址包含连续的零串。

冒号十六进制记法结合有点十进制记法的后缀。这种结合在IPv4向IPv6换阶段特别有用。例如,下面的串是一个合法的冒号十六进制记法:

0:0:0:0:0:0:128.10.1.1

这种记法中,虽然冒号所分隔的每一个值是一个16位的量,但每个分点十进制部分的值则指明一个字节的值。再使用零压缩即可得出:

::128.10.1.1

域名

12 个阿拉伯数字很难记忆。使用一个名称更容易。

用于 TCP/IP 地址的名字被称为域名。randzh.com 就是一个域名。

当你键入一个像 https://www.randzh.com 这样的域名,域名会被一种 DNS 程序翻译为数字。

在全世界,数量庞大的 DNS 服务器被连入因特网。DNS 服务器负责将域名翻译为 TCP/IP 地址,同时负责使用新的域名信息更新彼此的系统。

当一个新的域名连同其 TCP/IP 地址一起注册后,全世界的 DNS 服务器都会对此信息进行更新。

评论

  1. ezreal_rao 博主
    3年前
    2018-11-14 16:47:25

    :redface:

发送评论 编辑评论


|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇