本文转载自菜鸟教程TCP/IP 教程

  • TCPIP 教程
  • TCPIP 介绍
    • 计算机通信协议Computer Communication Protocol
    • 什么是 TCPIP
    • 在 TCPIP 内部
    • TCP 使用固定的连接
    • IP 是无连接的
    • IP 路由器
    • TCPIP
  • TCPIP 寻址
    • IP地址
    • IP 地址包含 4 组数字
    • 比特 4 字节
    • IP V6
    • 域名
  • TCPIP 协议
    • 协议族

TCP/IP 教程

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

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

您的浏览器与服务器都在使用 TCP/IP 协议

浏览器与服务器使用 TCP/IP 协议来链接因特网。

浏览器使用 TCP/IP 协议进入服务器,服务器使用 TCP/IP 协议来发送 HTML 到浏览器。
您的 E-Mail 使用 TCP/IP 协议

您的电子邮件也通过 TCP/IP 协议来发送和接收邮件。
因特网地址是 TCP/IP 协议

因特网地址比如 “42.120.45.233” 就是一个 TCP/IP 协议。

TCP/IP 介绍

TCP/IP 是用于因特网 (Internet) 的通信协议。

计算机通信协议(Computer Communication Protocol)

计算机通信协议是对那些计算机必须遵守以便彼此通信的的规则的描述。就像人之间交流用一套有规则的语言,计算机之间交流也有一套语言,这些语言也是有规则的,这些规则就是协议。

什么是 TCP/IP?

TCP/IP 是供已连接因特网的计算机进行通信的通信协议。

TCP/IP 指传输控制协议/网际协议(Transmission Control Protocol / Internet Protocol)。

TCP/IP 定义了电子设备(比如计算机)如何连入因特网,以及数据如何在它们之间传输的标准。

在 TCP/IP 内部

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

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

TCP 使用固定的连接

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

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

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

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

IP 是无连接的

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

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

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

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

IP 路由器

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

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

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

TCP/IP

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

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

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

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

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

总结:TCP做数据包,IP负责传数据包。

TCP/IP 寻址

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

IP地址

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

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

在本教程下一节,您会学习到更多关于 IP 地址和 IP 名称的知识。

IP 地址包含 4 组数字:

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

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

32 比特 = 4 字节

TCP/IP 使用 32 个比特来编址。一个计算机字节是 8 比特。所以 TCP/IP 使用了 4 个字节。

一个计算机字节可以包含 256 个不同的值:

00000000、00000001、00000010、00000011、00000100、00000101、00000110、00000111、00001000 ……. 直到 11111111。

现在,您应该知道了为什么 TCP/IP 地址是介于 0 到 255 之间的 4 组数字。

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 地址的名字被称为域名。runoob.com 就是一个域名。

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

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

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

TCP/IP 协议

TCP/IP 是不同的通信协议的大集合。

协议族

TCP/IP 是基于 TCP 和 IP 这两个最初的协议之上的不同的通信协议的大集合。
TCP - 传输控制协议

TCP 用于从应用程序到网络的数据传输控制。

TCP 负责在数据传送之前将它们分割为 IP 包,然后在它们到达的时候将它们重组。
IP - 网际协议(Internet Protocol)

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

IP 负责在因特网上发送和接收数据包。
HTTP - 超文本传输协议(Hyper Text Transfer Protocol)

HTTP 负责 web 服务器与 web 浏览器之间的通信。

HTTP 用于从 web 客户端(浏览器)向 web 服务器发送请求,并从 web 服务器向 web 客户端返回内容(网页)。
HTTPS - 安全的 HTTP(Secure HTTP)

HTTPS 负责在 web 服务器和 web 浏览器之间的安全通信。

作为有代表性的应用,HTTPS 会用于处理信用卡交易和其他的敏感数据。
SSL - 安全套接字层(Secure Sockets Layer)

SSL 协议用于为安全数据传输加密数据。
SMTP - 简易邮件传输协议(Simple Mail Transfer Protocol)

SMTP 用于电子邮件的传输。
MIME - 多用途因特网邮件扩展(Multi-purpose Internet Mail Extensions)

MIME 协议使 SMTP 有能力通过 TCP/IP 网络传输多媒体文件,包括声音、视频和二进制数据。
IMAP - 因特网消息访问协议(Internet Message Access Protocol)

IMAP 用于存储和取回电子邮件。
POP - 邮局协议(Post Office Protocol)

POP 用于从电子邮件服务器向个人电脑下载电子邮件。
FTP - 文件传输协议(File Transfer Protocol)

FTP 负责计算机之间的文件传输。
NTP - 网络时间协议(Network Time Protocol)

NTP 用于在计算机之间同步时间(钟)。
DHCP - 动态主机配置协议(Dynamic Host Configuration Protocol)

DHCP 用于向网络中的计算机分配动态 IP 地址。
SNMP - 简单网络管理协议(Simple Network Management Protocol)

SNMP 用于计算机网络的管理。
LDAP - 轻量级的目录访问协议(Lightweight Directory Access Protocol)

LDAP 用于从因特网搜集关于用户和电子邮件地址的信息。
ICMP - 因特网消息控制协议(Internet Control Message Protocol)

ICMP 负责网络中的错误处理。
ARP - 地址解析协议(Address Resolution Protocol)

ARP - 用于通过 IP 来查找基于 IP 地址的计算机网卡的硬件地址。
RARP - 反向地址转换协议(Reverse Address Resolution Protocol)

RARP 用于通过 IP 查找基于硬件地址的计算机网卡的 IP 地址。
BOOTP - 自举协议(Boot Protocol)

BOOTP 用于从网络启动计算机。
PPTP - 点对点隧道协议(Point to Point Tunneling Protocol)

PPTP 用于私人网络之间的连接(隧道)。

TCP/IP协议详解(TCP/IP protocol)相关推荐

  1. IP协议详解【IP报文头部结构、IP分片、IP路由、IP转发】

    目录 IP协议:全称:Internet Protocol(网际互连协议) IP协议的特点: IP头部结构: IP分片: IP路由: IP转发: IP协议:全称:Internet Protocol(网际 ...

  2. IP协议详解(IP协议格式、IP地址管理、路由转发)

    目录 1. IP协议格式 2. IP地址管理 2.1 早期地址管理方式 2.2 CIDR方式 3. 网络层的路由转发 1. IP协议格式 如图: 4位版本:标识当前是ipv4协议. 4位首部长度:和T ...

  3. 网络层:IP协议详解(IP协议真的得看这篇)

    1.IP协议概念 IP(Internet Protocol , 互联网协议)主要用于互联网通信.IP协议用于将多个包交换网络连接起来,他在原地址和目的地址之间传输数据报,还提供对数据大小的重新组装功能 ...

  4. IP协议详解(ip头部,ip分片,ip路由选择)

    IP协议是TCP/IP协议族中至关重要的协议,同时也是socker网络编程的基础之一.其中最重要的部分为 (1)ip头部信息:ip头部信息出现在每个ip报文数据报中,用于指定ip通信的远端ip地址,目 ...

  5. IP协议详解之IP分片

    IP分片:   当IP数据报的长度超过帧的MTU时,它将被分片传输.分片可能发生在发送端,也可能发送在中转路由器上,而且可能在传输过程中被多次分片,但只有在最终的目标机器上,这些分片才会被内核中的IP ...

  6. TCP/IP协议详解、TCP三次握手

    TCP/IP协议详解:TCP/IP协议详解_王佳斌-CSDN博客_tcp/ip协议认识HTTP协议它是互联网协议(Internet Protocol Suite),一个网络通信模型,是互联网的一个基本 ...

  7. IP协议详解及IPv4与IPv6协议的区别

    IP协议是在TCP/IP协议模型中的重要组成部分,目前我们使用最多的是IPv4协议,IPv6协议的用户量也在慢慢增加,苹果在几年之前就已经开始支持IPv6协议了.我们先来了解一下IPv4和IPv6协议 ...

  8. 《TCP IP协议 详解》思考总结 · 三

    前言 这一篇文章主要围绕了IP协议,ICMP协议和UDP协议展开,希望可以在这里大概做一个总结,将<TCP/IP协议详解 卷一>书中TCP相关章节前面的内容做一个结束,在下一篇文章专心的去 ...

  9. TCP/IP协议详解---概述

    工作之后,才发现以前在学校里学的东西忘得太快太干净了,现在需要一点点地捡起来了,要不然写几行程序会闹很多笑话会出现很多bug的.从今天开始,翻一翻<TCP/IP协议详解 卷1>这本书,希望 ...

  10. TCP/IP协议详解卷一:Chapter21 笔记

    TCP/IP协议详解卷一:Chapter21 笔记 Chapter 21 TCP的超时与重传 21.3 往返时间测量 21.5 拥塞举例 21.6 拥塞避免算法 21.7 快速重传与快速恢复算法 21 ...

最新文章

  1. tomcat server.xml中文版
  2. 清华陈文光教授:AI 超算基准测试的最新探索和实践(附演讲视频)
  3. 【GO语言】合理配置GOMAXPROCS提升一倍以上的性能
  4. fileinput模块可以循环一个或多个文本文件的内容
  5. php yii2.0 读取excel,yii2.0使用excel Gridview读取excel内容
  6. Cloud in Action: Install OpenStack Ocata from scratch
  7. c2c旅游springboot开源_7个开源的 Spring Boot 前后端分离项目,一定要收藏!
  8. iOS UISearchController和UITableView
  9. arcgis字段计算器无法赋值_分享∣Arcgis中62个常用技巧系列一(前20个技巧)
  10. 120 Python程序中的线程操作-队列
  11. OpenCV---轮廓发现
  12. 在自平衡中角动量守恒的原理分析
  13. android launcher启动过程,Android应用启动过程-Launcher源码浅析
  14. JSP+MYSQL网上作业提交及管理系统
  15. 为什么HashMap线程不安全?以及实现HashMap线程安全的解决方案
  16. Pytest03:pytest对测试函数常见处理方法
  17. 使用artisan命令创建控制器
  18. CoreDNS篇9-kubernetes插件
  19. 动网php_动网(DVBBS)PHP论坛preview.php代码执行漏洞
  20. 20200812 java 笔记

热门文章

  1. 内存对齐以及如何关闭内存对齐
  2. 使用puppeteer 提示Error: Failed to launch the browser process解决办法
  3. excel - 按钮编程 -脚本编程 - VBA
  4. 计算机类(计算机科学与技术)大学生职业生涯规划书
  5. java获取日期/时间
  6. centos7查看oracle监听端口,CentOS 7开放及查看防火墙firewall的端口
  7. 【Opencv】目标追踪——高斯混合模型分离算法(MOG)
  8. 【ChatGPT4】王老师零基础《NLP》(自然语言处理)第三课
  9. c语言中数组部分输入赋值,c语言scanf对数组赋值
  10. 生物老师(搞笑)鼻子和手