文章目录

  • 什么是 TCP/IP?
    • TCP/IP 内部
    • TCP 使用固定的连接
    • IP 是无连接的
    • IP 路由器
    • TCP/IP
  • TCP/IP 寻址
    • 域名
    • TCP/IP 协议族
  • TCP/IP 邮件

什么是 TCP/IP?

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

TCP/IP 协议不仅仅指的是 TCP 和 IP 两个协议,而是指一个由 FTP、SMTP、TCP、UDP、IP 等协议构成的协议簇, 只是因为在 TCP/IP 协议中 TCP 协议和IP协议最具代表性,所以被称为 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 使用 32 个比特或者 4 组 0 到 255 之间的数字来为计算机编址。

  • IP地址
  1. 每个计算机必须有一个 IP 地址才能够连入因特网。
  2. 每个 IP 包必须有一个地址才能够发送到另一台计算机。

IP 地址包含 4 组数字每个计算机必须有一个唯一的 4 组数字的地址。每组数字必须在 0 到 255 之间,并由点隔开,比如:192.168.1.128。
TCP/IP 使用 32 个比特来编址。一个计算机字节是 8 比特。所以 TCP/IP 使用了 4 个字节。

一个计算机字节可以包含 256 个不同的值:
00000000、00000001、00000010、00000011、00000100、00000101、00000110、00000111、00001000 … 直到 11111111。

域名

ip地址很难记忆。使用一个名称更为容易。用于 TCP/IP 地址的名字被称为域名。百度.com 就是一个域名。
当你键入一个像 http://www.baidu.com 这样的域名,域名会被DNS 翻译为数字。
在全世界,数量庞大的 DNS 服务器被连入因特网。DNS 服务器负责将域名翻译为 TCP/IP 地址,同时负责使用新的域名信息更新彼此的系统。
当一个新的域名连同其 TCP/IP 地址一起注册后,全世界的 DNS 服务器都会对此信息进行更新。

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(HTTP Secure)
    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 最重要的应用之一。
当您写邮件时,会使用电子邮件程序,例如莲花软件的 Notes,微软公司出品的 Outlook,或者 Netscape Communicator 等等。

您的电子邮件程序使用不同的 TCP/IP 协议:

  • 使用 SMTP 来发送邮件
  • 使用 POP 从邮件服务器下载邮件
  • 使用 IMAP 连接到邮件服务器
  • SMTP - 简单邮件传输协议
  • SMTP 协议用于传输电子邮件。SMTP 负责把邮件发送到另一台计算机。

通常情况下,邮件会被送到一台邮件服务器(SMTP 服务器),然后被送到另一台(或几台)服务器,然后最终被送到它的目的地。

SMTP 也可以传送纯文本,但是无法传输诸如图片、声音或者电影之类的二进制数据。

SMTP 使用 MIME 协议通过 TCP/IP 网络来发送二进制数据。MIME 协议会将二进制数据转换为纯文本。

  • POP - 邮局协议
    POP 协议被邮件程序用来取回邮件服务器上面的邮件。

假如您的邮件程序使用 POP,那么一旦它连接上邮件服务器,您的所有的邮件都会被下载到邮件程序中(或者称之为邮件客户端)。

IMAP - 因特网消息访问协议
与 POP 类似,IMAP 协议同样被邮件程序使用。

IMAP 协议与 POP 协议之间的主要差异是:如果 IMAP 连上了邮件服务器,它不会自动地将邮件下载到邮件程序之中。

IMAP 使您有能力在下载邮件之前先通过邮件服务器端查看他们。通过 IMAP,您可以选择下载这些邮件或者仅仅是删除它们。比方说您需要从不同的位置访问邮件服务器,但是仅仅希望回到办公室的时候再下载邮件,IMAP 在这种情况下会很有用。

转自菜鸟教程

Tcp/ip协议 详解相关推荐

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

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

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

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

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

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

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

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

  5. TCP /IP协议详解【转】

    转自:https://www.jianshu.com/p/0cf648510bce?utm_campaign=maleskine&utm_content=note&utm_medium ...

  6. 04 TCP/IP协议详解

    目录 章节目标 4.1 概述 1.为什么会有TCP/IP协议 2.介绍 4.2 TCP/IP协议族 4.2.1 TCP/IP协议栈 1.协议的分层 2. 主机与主机之间通信的三要素 3.应用层 4.传 ...

  7. 【网络基础】TCP/IP协议详解

    TCP/IP协议定义 TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是在多个不同网络间实现信息传输的通信协议.是 ...

  8. WinSock API网络编程——TCP/IP协议详解

     WinSock API网络编程--TCP/IP协议(http://www.impcas.ac.cn/usr/lujun/browse.asp?id=winsock_tcp)            ...

  9. TCP/IP协议详解内容总结(怒喷一口老血)

    TCP/IP协议(本文源自外部链接) TCP/IP不是一个协议,而是一个协议族的统称.里面包括IP协议.IMCP协议.TCP协议. 这里有几个需要注意的知识点: 互联网地址:也就是IP地址,一般为网络 ...

最新文章

  1. linux进程间通讯-共享内存
  2. 一个爬虫的demo,requests,beatuifulsoup使用的
  3. nagios出现乱码
  4. 关于IE6下CSS选择器失效的问题
  5. 超详细:Springboot连接centos7下redis6的必要配置和失败分析
  6. 基于JAVA+SpringBoot+Mybatis+MYSQL的医药进销存管理系统
  7. SURF特征提取分析(一)
  8. java swing复选框大小_Java Swing界面编程(28)---复选框:JCheckBox
  9. Mysql 的 Cascade Restrict
  10. 记录一下weui文档地址
  11. SD卡无法格式化怎么办?恢复SD卡这样做
  12. amd显卡驱动目录linux,面向 Radeon、Radeon Pro、FirePro、APU、CPU、锐龙、台式机、笔记本的 AMD 驱动程序和支持...
  13. java synchronized关键字的用法以及锁的等级:方法锁、对象锁、类锁
  14. excel冻结窗口怎么设置_EXCEL中隐藏、冻结、拆分窗口
  15. 金融学核心期刊有哪些?
  16. calcite mysql_Apache Calcite 简介
  17. k8s对外攻击面总结
  18. STM32基于固件库学习笔记(11)RTC实时时钟
  19. java开发抖音短视频无水印下载工具
  20. 高精地图语义分割标注

热门文章

  1. js算法数组flat展平的几种方法
  2. golang 生成二维码海报的实现代码
  3. 天津春考计算机学什么,2016天津春季高考计算机基础科目考试大纲
  4. SpringBoot的优点
  5. sqlserver 访问接口没有oracle,无法创建链接服务器XXXXX的OLEDB访问
  6. 娶老婆的15条金科玉律
  7. Python数据分析pandas入门(一)------十分钟入门pandas
  8. 一文带你了解什么是API和SDK
  9. 简单使用Linux工业平板(一)
  10. 常见数学中的特殊符号