目录

1、概述

2、TCP/IP寻址及其协议族

3、TCP/IP 邮件


1、概述

介绍:什么是TCP/IP?

  1. TCP/IP协议是对计算机必须遵守的规则的描述,遵守了规则才能通信。

应用

  1. 浏览器与服务器连接因特网。浏览器使用TCP/IP协议进入服务器;服务器使用TCP/IP协议发送HTML到浏览器。
  2. E-Mail使用TCP/IP协议发送和接收邮件。
  3. 因特网地址也是TCP/IP协议。如:“41.115.50.230”就是一个TCP/IP协议。

在TCP/IP内部在TCP/IP中包含一系列 处理数据通信的协议

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

TCP和 IP分工TCP/IP意味着TCP和IP一起协同工作,各司其职却又密切相关。

TCP用于应用程序间的通信,它是固定连接的,两个应用程序通过“三次握手”建立连接(应用软件与网络软件),占用各自计算机通信线路知道一方断开;

IP用于计算机之间的通信,它是无连接的,不会占用通信计算机间的通信线路;

TCP负责将数据分割并装入IP包,然后在他们到达的时候重新组合他们;IP负责将包发送至接受者。

 概念

  • TCP/IP四层模型:应用层、传输层、网际层和网络接口层。
  • 五层协议体系结构:应用层、传输层、网络层、数据链路层和物理层。
  • OSI七层网络模型:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。

TCP/IP原理浅析

TCP/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, (未完待续)

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

================================================

2、TCP/IP寻址及其协议族

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

IP地址:

IP地址包含四组数字,每组数字在0到255之间,并由点号隔开,比如192.168.1.110。

域名:

域名解决了IP地址是一长串数字加点号不便记忆的问题。域名作为IP地址的名字,是通过DNS服务器解析翻译成IP地址的,全世界的DNS服务器会对域名及IP地址信息更新。

 协议族:

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

TCP-传输控制协议:

  • TCP用于从应用程序到网络的数据传输控制。
  • TCP负责在数据传送之前将他们分割为IP包,然后在他们到达的时候重组。

IP-网际协议:

  • IP负责计算机之间的通信。
  • IP负责在因特网上发送和接收数据包。

HTTP-超文本传输协议(Hyper Text Transfer  Protocol):

  • HTTP负责web服务器与web浏览器之间的通信。
  • HTTP用于从web客户端(浏览器)向web服务器发送请求,并从web服务器向 web客户端返回内容(网页)。

HTPPS-安全的HTTP(HTTP Secure)

  • HTTPS负责在web服务器和web浏览器之间的安全通信。
  • 作为有代表性的应用,HTTPS会用于处理信用交易和其它的敏感数据。

SSL-安全套接字层(Secure Socket 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 用于私人网络之间的连接(隧道)。

3、TCP/IP 邮件


电子邮件是 TCP/IP 最重要的应用之一。

电子邮件程序使用不同的 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和HTTP的举例理解

    闲暇中逛博客园,看到TCP/IP和HTTP关键词,就突然想深刻理解他们(以前真的是只知皮毛),于是看了关于TCP/IP和HTTP的博文,就有了此文. 首先要引出开放系统互连参考模型(OSI:Open ...

  2. socket,TCP/IP的理解

    TCP/IP 要想理解socket首先得熟悉一下TCP/IP协议族, TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间 ...

  3. 【PHPsocket编程专题(理论篇)】初步理解TCP/IP、Http、Socket.md

    前言 我们平时说的最多的socket是什么呢,实际上socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API).那TCP/IP又是什么呢?TCP/IP是ISO/OS ...

  4. TCP/IP体系结构-测试人员必须理解的

    如果还想在测试这条路上继续走下去的话,那么下面这些东西就是我们必须去掌握的,至少你还不想止步于简单的黑盒测试--其实,一直想去接触Linux下的应用测试,这样能学到东西会很多,而且会非常的受用.之前听 ...

  5. 小故事理解TCP/IP连接时的三次握手

    在TCP/IP协议中,TCP协议通过三次握手建立一个可靠的连接,示意图如下: 下面通过一个小故事简单理解一下这三次握手的具体含义: 一天,快递员小客(客户端)准备去小服(服务器)家去送快递(准备与服务 ...

  6. 深入浅出理解 TCP/IP 协议 (一)

    文章转自:https://www.cnblogs.com/onepixel/p/7092302.html TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入 ...

  7. TCP/IP协议理解

    TCP/IP协议理解 一.    协议分层 由于ISO标准中的网络模型是个7层模型,但是由于7层模型对于当时的网络厂商来说太过复杂,很多厂家采用了简化的4层模型来实现网络设备,4层模型也就成了事实的网 ...

  8. TCP/IP网络协议的通俗理解,SOCKET,HTTP,SOAP

    TCP/IP,HTTP,SOAP等协议之区别   术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议.“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络.把IP想 ...

  9. TCP/IP 网络编程的理解

    一.网络各个协议:TCP/IP.SOCKET.HTTP等 网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层. 其中物理层.数据链路层和网络层通常被称作媒体层,是网络工程 ...

随机推荐

  1. Js 运算符(加减乘除)

    1.加法 + +NaN //NaN,有一个为NaN就为NaN var box=Infinity+Infinity //Infinity var box=-Infinity + -Infinity // ...

  2. Springboot+RestTemplate 简单使用

        spring框架提供的RestTemplate类可用于在应用中调用rest服务,它简化了与http服务的通信方式,统一了RESTful的标准,封装了http链接, 我们只需要传入url及返回值 ...

  3. 2018 徐州赛区网赛 G. Trace

    题目链接在这里 题意是:按时间先后有许多左下角固定为(0,0),右上角为(xi,yi)的矩形浪潮,每次浪潮会留下痕迹,但是后来的浪潮又会冲刷掉自己区域的老痕,留下新痕迹,问最后留下的痕迹长度为多少? ...

  4. 评微软收购GitHub

    前段时间,微软正式宣布以75亿美元收购GitHub.除了微软和GitHub以外,也许对这笔并购最在意的,正是微软的同城敌友,亚马逊.在我看来,GitHub也许是微软史上最好的收购. 75亿美元贵不贵? ...

  5. 【原创】python内存泄漏以及python flask框架莫名coredump

    1.python内存泄漏 今天在看服务器上的进程时,用top查的时候,发现一个一直跑的脚本程序内存竟然达到了1.6G,这个脚本我有印象,一开始仅占用20M左右,显然是内存泄漏了. 用gc和objgra ...

  6. 动态代理与HOOK(与oc isa 替换)

    HOOK:面向函数,解决函数调用拦截与替换的问题: 动态代理:面向对象,解决对象的动态替换问题: 动态代理的实现方案: 1.经典代理机制: 2.子类化机制:oc语言的isa替换是这额解决方案的经典案例 ...

  7. OSM

    一.OSM是什么 开放街道图(OpenStreetMap,简称OSM)是一个网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图(wiki:http://wiki.openstreetm ...

  8. Linux centos修改防火墙为iptables

    防火墙配置 CentOS 7默认使用的是firewall作为防火墙,这里改为iptables防火墙.  firewall操作: # service firewalld status; #查看防火墙状态 ...

  9. JIRA使用方法,简易图解

          我们公司要用版本控制(SVN)和过程管理(JIRA)相配合开发软件,所以两个都得用喽!     JIRA是集项目计划.任务分配.需求管理.错误跟踪于一体的商业软件.JIRA创建的问题类型包 ...

  10. Splay普及版

    辣么,我要介绍我自学的\(Splay\)了,虽然跟大佬们讲得会有些重复,但是自认为把一些玄妙的东西点出来了\(qwq\) \(0x01\) 引言 首先,我并没觉得\(Splay\)有多难--代码长的原 ...