1.定位:指因特网整个TCP/IP协议族,由四个层次组成:网络接入层、网络层、主机到主机层、应用层。也叫DoD模型。每一层都呼叫它的下一层所提供的网络来完成自己的需求。

2.与OSI模型的对应:

  

3.网络接入层:定义物理介质的各种特性;

4.网络层:负责相邻计算机之间的通信。包括三方面的内容:

  1) 处理来自传输层的分组发送请求,收到请求后,将分组装入IP数据报,填充报头,选择去往信宿机的路径,然后将数据报发往适当的网络接口。

  2) 处理输入数据报:首先检查其合法性,然后进行寻径--假如该数据报已到达信宿机,则去掉报头,将剩下部分交给适当的传输协议;假如该数据报尚未到达信宿,则转发该数据报。

  3) 处理路径、流控、拥塞等问题。

  在网络中,并不是条条大路都通罗马,相反它们是都通向IP的。在网络层上所有其他的协议和高层协议都需要使用到IP协议。决不要忘记,DoD模型中的所有操作都是要通过IP来完成的。

  包括的协议:IP协议、ICMP(Internet Control Message Protocol)控制报文协议、ARP地址解析协议、RARP(Reverse ARP)反向地址解析协议。

  ICMP是网络层的补充,可以回送报文。用来检测网络是否通畅。

  Ping命令就是发送ICMP的echo包,通过回送的echo relay进行网络测试。

  ARP是正向地址解析协议,通过已知的IP,寻找对应主机的MAC地址。

  RARP是反向地址解析协议,通过MAC地址确定IP地址。

  传输层:提供应用程序间的通信。其功能包括:1)格式化信息流;2)提供可靠传输。为实现后者,传输层协议规定接收端必须发回确认,并且假如分组丢失,必须重新发送,即耳熟能详的“三次握手”过程,从而提供可靠的数据传输。

5.应用层:向用户提供一组常用的应用程序,比如电子邮件、文件传输访问、远程登录等。

  1)Telnet:远程登录TELNET使用TELNET协议提供在网络其它主机上注册的接口。TELNET会话提供了基于字符的虚拟终端。Telnet是协议中的变色龙,它的特别之处在于它对终端的仿真。

  它允许一个用户在远程客户端(被称为Telnet客户)访问另一台机器(称为Telnet服务器)上的资源。Telnet是通过在Telnet服务器上运行并且在客户端显示操作结果来实现控制的,就好像客户是一个直接连接在本地网络上的操作终端。

  这个显示结果实际上是一个软件处理的映像,即一个虚拟终端,一个可以同远程被选择主机进行交互控制的虚终端。

  这些仿真终端是一些基于文本模式类型的终端,它可以执行一些精心编制的程序,如带有可以给用户提供多种选项菜单的程序,并且它还可以在登录的服务器上访问一些应用程序。

  用户可以通过运行Telnet客户端软件来打开一个Telnet会话,并且登录到Telnet服务器上。

  2)FTP:文件传输访问FTP使用FTP协议来提供网络内机器间的文件拷贝功能。文件传输协议(FTP)实际上就是传输文件的协议,它可以应用在任意两台主机之间。但是FTP不仅仅是一个协议,它同时也是一个程序。

  作为协议,FTP是被应用程序所使用的;而作为程序,用户需要通过手动方式来使用FTP并完成文件的传送。FTP允许执行对目录和文件的访问,并且可以完成特定类型的目录操作,例如将文件重新定位到不同的目录中。

  显然,FTP是与Telnet合作一同来完成对 FTP服务器的登录操作,并在这之后再开始提供文件传送服务的。

  然而,通过FTP访问主机这只是第一步。随后,用户必须通过一个由系统管理员为保护系统资源而设置的安全登录认证,这个认证需要输入正确的口令和用户名。但是,也可以通过使用用户名―anonymous‖来尝试登录。

  当然,通过这种方式完成登录后,所能访问的内容将会受到某些限制。

  即使FTP可以被用户以应用程序的方式来使用,FTP的功能也只限于列表和目录操作、文件内容输入,以及在主机间进行文件拷贝。它不能远程执行程序文件。

  何时应当使用FTP?如果你需要给某个人发送一个大文件或者你需要从某人那里得到一个大文件,FTP是最好的选择。大多数ISP不允许通过电子邮件来传送大于5MB的文件。

  所以如果你需要传送或接收一些大文件(在现在许多人都会遇到这个问题),使用FTP仍是一种你应该考虑的选择。要做到这一点,需要在因特网上设臵一台FTP服务器,以便共享文件。

  3)TFTP: 简单文件传输协议(TFTP)是FTP的简化版本,只有在你确切地知道想要得到的文件名及它的准确位置时,才可有选择地使用TFTP。TFTP不提供目录浏览的功能,它只能完成文件的发送和接收操作。

  这个紧凑的小协议在传送的数据单元上也是节省的,它发送比FTP更小的数据块,同时它也没有FTP所需要的传送确认,因而它是不可靠的。

  4)简单邮件传输协议(SMTP):对应于我们普遍使用的被称为E-mail的应用,它描述了邮件投递中的假脱机、排列及方法。当某个邮件被发往目的端时,它将先被存放在某个设备上,通常是一个磁盘。

  目的端的服务器软件负责定期检查信件的存放队列。当它发现有信件到来时,会将它们投递到目的方。SMTP用来发送邮件,POP3用来接收邮件。

  5)网络文件系统(NFS):在文件共享中是一个特殊的协议珍宝。它允许两个不同类型的文件系统实现互操作。它的工作机理是这样的:假设NFS服务器软件运行在 NT服务器上,而NFS客户端软件则运行在一台UNIX主机上。

  NFS允许在NT服务器上划分出一部分RAM来透明地存放UNIX文件,而这些文件可以被一些UNIX用户使用。即使NT文件系统和UNIX文件系统是完全不同的(它们有不同的大小写敏感性、文件名长度、安全保障等),

  UNIX用户和NT用户也依然可以以他们习惯的方式来使用他们常用的文件系统,访问同一个文件。

  6)简单网络管理协议(SNMP):采集并使用一些有价值的网络信息。它通过从管理站定期或不定期地轮询网络上的设备来获取数据,并要求这些设备透露某些与管理相关的佶息。

  当所有的设备都工作正常时,SNMP会接收到被称为基线的信息,即一个界定健康网络运转特性的报告。这个协议也可以被描述为整个网络的看门狗,它可以很快地通告管理人员任何突然事件的发生。

  这些网络看门狗被称为代理,并且当一个故障发生时,这些代理会发送一个称为陷阱的警告给管理站。

  7)DNS8)DHCP

6.数据格式:

  数据帧:帧头+IP数据包+帧尾 )帧头包括源和目标主机MAC地址及类型,帧尾是校验字)

  IP数据包:IP头部+TCP数据信息)IP头包括源和目标主机IP地址、类型、生存期等)

  TCP数据信息:TCP头部+实际数据 (TCP头包括源和目标主机端口号、顺序号、确认号、校验字等)

TCP/IP__TCP/IP协议的更多相关文章

  1. HTTP、TCP、IP协议常见面试题

    前言:在看面试题之前,先了解一下基本定义. HTTP.TCP.IP协议基本定义 HTTP: (HyperText Transport Protocol)是超文本传输协议的缩写,它用于传送WWW方式的数 ...

  2. HTTP要点概述:一,TCP/IP协议族

    一,协议: 计算机与网络设备之间如果要相互通信,双方必须基于相同的方法.比如说,怎么探测到通讯目标,哪一方发起通信,使用哪一种语言通信,怎么结束通信,都需要事先规定.不同硬件,操作系统之间的通信需要一 ...

  3. HTTP、TCP、IP协议面试题

    HTTP.TCP.IP协议基本定义 HTTP: (HyperText Transport Protocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2 ...

  4. tcp与ip协议的区别

    TCP/IP(TransmissionControlProtocol/InternetProtocol的简写,中文译名为传输控制协议/互联网络协议). 简单地说,就是由底层的IP协议和TCP协议组成的 ...

  5. 三、tcp、ip协议详细

    1. 什么是 TCP/IP? TCP/IP 是一类协议系统,它是用于网络通信的一套协议集合. 传统上来说 TCP/IP 被认为是一个四层协议 1) 网络接口层: 主要是指物理层次的一些接口,比如电缆等 ...

  6. socket http tcp udp ip 协议

    Socket可以支持不同的传输层协议(TCP或UDP),当使用TCP协议进行连接时,该Socket连接就是一个TCP连接. socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作 ...

  7. 浅析TCP /UDP/ IP协议

    互连网早期的时候,主机间的互连使用的是NCP协议.这种协议本身有很多缺陷,如:不能互连不同的主机,不能互连不同的操作系统,没有纠错功能.为了改善这种缺点,大牛弄出了TCP/IP协议.现在几乎所有的操作 ...

  8. 网络基础和 TCP、IP 协议

    1.网络基本概念 1.1 什么是网络:一些网络设备按照一定的通讯规则(网络协议)进行通讯的系统. 1.2 VPN(虚拟私有网络)加密,相当于专线,从分支机构到总部. 1.3 资源共享的功能和特点: 数 ...

  9. 深入浅出TCP与IP协议笔记

    TCP/IP 4层结构:应用层 传输层 网络层 链路层   探索过程问题:一个主机的数据要经过哪些过程才到达对方的主机上 一组电信号就是一个数据包,一个数据包称为一帧,制定这个规则的就是以太网协议   ...

随机推荐

  1. TurtleBot3使用课程-第三节b(北京智能佳)

    目录 1.使用TurtleBot3机械手运行SLAM 2 1.1 roscore运行 2 1.2 准备行动 3 1.3 运行SLAM节点 3 1.4 运行turtlebot3_teleop_key节点 ...

  2. C#:使用连接字符串连接数据库

    前言:在上学期选择专业时候,选择的是互联网(还有物联网),这学期相关课程便是使用c#完成一个管理系统:最近的作业是完成一个对数据库操作类,操作数据库?虽然是很简单的一个作业,但也是懵逼了很久,在网上找 ...

  3. three.js canvas内场景生成图片 canvas生成图片

    第一种最简单的方法: 1 threeBox.render();//重点 解决拿到图片后为黑色 2 3 let src=threeBox.renderer.domElement.toDataURL(); ...

  4. VsCode配置Go语言插件

    前言 宇宙第一IDE对于笔记本来说还是太过沉重了 VsCode虽然差了点但是胜在插件多且够轻量 VsCode的安装/汉化参考我之前的博客 https://www.cnblogs.com/chnmig/ ...

  5. Ts有限状态机

    ts版本的有限状态机 最近做小游戏要做切换人物状态,花点时间写了一个有限状态机,使用语言为Ts,也可改成自己的语言 按照目前的逻辑,这个可以继续横向扩展,某些做流程管理 先上预览图 Fsm:状态机类 ...

  6. 7.prometheus之查询API

    一.格式概述 二.表达式查询 2.1 Instant queries(即时查询) 2.2 范围查询 三.查询元数据 3.1 通过标签匹配器找到度量指标列表 3.2 获取标签名 3.3 查询标签值 四. ...

  7. 【EXPDP/IMPDP】ORACLE数据泵导入导出案例(expdp & impdp)

    概要: 因项目需要,通常需要将生产库下的部分数据抽取并恢复到测试库上 本文主要介绍数据泵导入导出的几种情况以及错误处理 案例环境: rhel-server-6.5-x86_64 oracle 11.2 ...

  8. 【Oracle】用sqlplus登录的各种方式

    1.本地登录 sqlplus / as sysdba 2.账号密码登录 sqlplus user/passwd 3.选择实例登录 sqlplus user/passwd@实例名   例如 sqlplu ...

  9. Linux下Too many open files问题排查与解决

    作者: Grey 原文地址: Github 语雀 博客园 Too many open files是Linux系统中常见的错误,从字面意思上看就是说程序打开的文件数过多,不过这里的files不单是文件的 ...

  10. ctfhub技能树—sql注入—时间盲注

    打开靶机 查看页面信息 测试时间盲注 可以看到在执行命令后会有一定时间的等待,确定为时间盲注 直接上脚本 1 #! /usr/bin/env python 2 # _*_ coding:utf-8 _ ...