(001)TCP/IP协议-概述

作者: 林湾村龙猫 | 来源:发表于2016-01-29 02:45 被阅读528次

一、引言

TCP/IP协议簇是目前internet网的事实上的协议簇,它相对于国际标准化组织制定的OSI参考模型的七层协议(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层)不同,它只有四层(链路层、网络层、运输层、应用层)。分层的目的是将一个复杂的问题分解,每一层专注于一个功能点,单一职责。

二、分层

tcp/ip协议簇分层

1.四层协议如下:

  • 链路层,通常包括设备驱动程序、网络接口卡、传输介质。处理物理接口细节。
  • 网络层,处理网络中分组的活动,点到点,点到多端。包括IP协议、ICMP协议、IGMP协议等。
  • 运输层,提供两台主机上的两个应用程序的端到端通讯。包括TCP协议、UDP协议。
  • 应用层,处理特定应用的细节。如HTTP协议,FTP协议,SSH协议等等。

2.常用协议概览(由下至上)

  • ARP协议与RARP协议,用于转换IP地址与MAC地址。
    • ARP协议:地址解析协议(Address Resolution Protocol),IP地址 ---> MAC地址;
    • RARP协议:反地址解析协议(Reverse Address Resolution Protocol),MAC地址 ---> IP地址;
  • IP协议是网络层主要协议,ICMP协议是IP协议的附属协议。
    • IP协议:网际协议(Internet Protocol),控制点到点传输。IP传给链路层的数据单元叫IP数据包(IP datagram)
    • ICMP协议:网络控制消息协议(Internet Control Message Protocol),用于与其他机器交换错误报文信息与其他重要信息。
    • IGMP协议:网际组管理协议(Internet Group Management Protocol),用于把一个UDP数据报多播到多个主机上。
  • TCP协议与UDP协议,用于规定传输方式。都是IP协议的上层协议。
    • TCP协议:传输控制协议(Transmission Control Protocol),用于提供端到端的、面向连接的、可靠的、基于字节流的通讯协议。他需要三次握手建立连接,四次握手关闭连接。TCP传给IP的数据单元叫做TCP段(TCP segment)
    • UDP协议:用户数据报协议(User Datagram Protocol),为应用程序发送/接收数据报(一定字节数的信息单元)。与TCP不同,UDP不是可靠的传输协议。常用的基于UDP的应用协议有DNS协议、TFTP协议等等。UDP传给IP的数据单元叫UDP数据包(UDP datagram)。UDP数据包首部长8字节。
  • HTTP协议、DNS协议、FTP协议等,这些协议都有其具体的应用场景。
    • HTTP协议:超文本传输协议(HyperText Transfer Protocol),常用的网站协议。
    • DNS协议:域名解析协议(Domain Name System),只有一个用途,将常见的域名地址(如www.baidu.com)解析成IP地址(如127.0.0.1)。
    • FTP协议:文件传输协议(File Transfer Protocol),正如其名,就是用来传输文件用的。

三、互联网的地址(IP地址)

五大类IP地址
  internet上的接口都有唯一的一个IP地址。常用的IP地址长度是32bit,这32bit常写成4个十进制数(如127.0.0.1,每一个数最大为255)。如果一台主机有多个网络接口,那么每一个接口对应一个IP地址。所有的IP地址又可以分为三类:单播地址(目的为单个主机)多播地址(目的为同一组的所有主机)广播地址(目的为给定网络的所有主机)
各类IP地址对应的范围

四、端口号

端口号,是用来区分一台或多台主机上的那些应用在通信。你想啊,两台主机通信,每台主机上有n个应用程序在执行,鬼知道是哪个应用程序与哪个应用程序在通信,所以有了端口号。传输层使用16bit来表示端口号。也就是说一台机器最多有六万多个端口号(0~65535)。端口号分类如下:

  • 0,为保留端口号,不使用(若发送过程不准备接受回复消息,则可以作为源端口)。
  • 知名端口号(1~1023),由Internet号分配机构(Internet Assigned Numbers Authority,IANA)来管理。如 22-SSH、25-SMTP、80-HTTP等等。服务器一般通过知名端口号来标识。查看知名端口分配方式如下:
  • 零时端口号(1024~5000),系统自动分配的。客户端一般不需要关心它使用的端口号,所以采用临时端口号。
  • 其他服务端口号(5001~65535),其他服务端口号(internet上不常用的服务)。如xdebug(PHP代码调试)默认端口号9000、Fiddler(http抓包工具)默认http代理端口号8888等等。

五、客户与服务模型

大部分的网络应用都是使用的客户端+服务器模型。让服务器为客户端提供一些特定服务。通常服务可以分为两类:重复型并发型

典型客户-服务模型

1.重复型服务

  a. 等待一个客户端请求到来。
  b. 处理该客户端请求。
  c. 发送响应给该请求的客户端。
  d. 返回a步骤。

当出来一个客户端请求的时候,无法为其他客户端提供服务。

2.并发型服务

  a. 等待一个客户端请求到来。
  b. 启动一个新的服务(进程/线程/任务等)来处理该客户端请求。
     新服务处理该请求返回响应给该请求客户端。
  c. 返回a步骤。

并发型服务优点在于可以同时处理多个请求。

相关文章

  • TCP协议

    TCP/IP协议分层详解TCP/IP协议详解通俗易懂网络协议(TCP/IP概述)什么是TCP/IP协议?

  • (001)TCP/IP协议-概述

    一、引言 TCP/IP协议簇是目前internet网的事实上的协议簇,它相对于国际标准化组织制定的OSI参考模型的...

  • 计算机网络TCP/IP协议组和UDP

    概述TCP/IP TCP/IP不是传输层协议,而是网络通讯协议,它包括许多协议。TCP/IP是个协议组,可分为三个...

  • 计算机网络(二)| IP协议

    IP概述 IP 协议简述 IP协议(Internet Protocol,互联网协议),是TCP/IP协议栈中最核心...

  • TCP/IP协议

    TCP/IP协议 TCP/IP协议概述 TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考...

  • TCP/IP 卷Ⅰ协议-绪论

    TCP/IP 概述 简介:本系列文章,主要对TCP/IP协议族进行概述,其实对于整个计算机网络来说,TCP/IP只...

  • HTTP系列 -- 网络 与 IP

    概述 HTTP协议的底层是由 TCP 协议和 IP 协议(简称TCP/IP)构建的。HTTP只规定了请求格式和相应...

  • 概述TCP/IP协议及其三握四挥

    概述TCP/IP协议及其三握四挥 TCP/IP基础 TCP/IP具体含义 从字面意义上讲,有人可能会认为 TCP/...

  • tcp/ip协议概述

    网络协议分为不同层次,每一层分别负责不同的通信功能, 一个协议族,比如TCP/IP, 是一组不同层次上的多个协议的...

  • 计算机网络技术(三)——网络协议和体系结构

    摘要 网络协议和体系结构概述 OSI参考模型 TCP/IP参考模型 TCP和UDP 一、网络协议和体系结构概述 网...

网友评论

    本文标题:(001)TCP/IP协议-概述

    本文链接:https://www.haomeiwen.com/subject/wcsjkttx.html