TCP/IP协议源于1969年,是国际互联网Internet采用的协议标准
TCP/IP协议是一组通信协议的代名词,是由一系列协议组成的协议族,本身是指两个协议集:
    TCP--传输控制协议
    IP--互联网络协议

TCP/IP的分层及基本工作原理
    TCP/IP协议族是一组不同层次上的多个协议的组合,通常被认为是一个四层协议系统
        应用层(应用层、表示层): Telnet,Ftp,Smtp,http,DNS,RIP,SNMP,TFTP
        传输层(传输层、会话层): TCP,UDP
        网络层(Internet层): IP,ICMP,IGMP,ARP
        网络接口层(链路层、物理层): 接口卡及设备驱动,ATM, Ethernet, 以太网, 令牌环(SLIP, PPP)

TCP/IP与OSI协议的比较
        应用层、表示层、会话层(5~7层):  Telnet,Ftp,Smtp,http,DNS,RIP,SNMP
        传输层: TCP,UDP
        网络层: IP,ICMP,IGMP,ARP,RARP
            IP:网际协议
        数据链路层、物理层: 由底层网络定义的协议
            SLIP
            PPP

TCP/IP协议集的主要协议:
        IP: 数据报服务 相应OSI层:3
        ICMP: 差错和控制 相应OSI层:3
        ARP: 互联网地址-> 物理地址 相应OSI层:3
        RARP: 物理地址-> 互联网地址 相应OSI层:3
        TCP: 可靠流服务 相应OSI层:4
        FTP: 文件传送 相应OSI层:5~7
        Telnet: 终端仿真 相应OSI层:5~7
        DNS: 域名-互联网地址 相应OSI层:5~7

TCP/IP的核心协议:
    网络层协议
        ARP(地址解析协议): ARP 把 基于TCP/IP软件使用的IP地址 解析成 局域网硬件使用的媒体访问控制(MAC)地址
        RARP(反向地址解析协议RARP)
        ICMP(互联网控制报文协议): ICMP用来传送一些关于网络和主机的控制信息(ping命令就是使用了ICMP协议),ICMP只是报告数据出错并不再传送错误的数据,并在IP数据报的生存期过后将其抛弃

传输层协议
        TCP协议: 即传输控制协议,是一个可靠的、面向连接的协议
            TCP是面向连接的协议:面向连接的服务具有:连接建立、数据传输、连接释放三个阶段
            TCP协议工作机制(三次握手):
                主机A发送SYN信号(序号=x)        --->  主机B接收SYN信号(序号=x)
                接收SYN信息(序号=y,确认号=x+1) <---  主机B发送SYN信息(序号=y,确认号=x+1)
                主机A发送ACK信号(确认号=y+1)    --->  主机B接收ACK信息(确认号=x+1)

UDP协议: 采用无连接的方式,不管发送的数据包是否到达目的主机,数据包是否出错。收到数据包的主机也不会告诉发送方是否正确收到了数据,它的可靠性是由上层协议来保障的。
            无连接服务的特征是他不需要通信的两个实体同时是活跃的(激活态), 优点是:灵活方便、迅速,适合于传送少量零星的报文   缺点是:不能防止报文丢失、重复和失序

协议端口(简称端口):
            端口实际上是一个16Bit长的地址,范围可以从0~65535,其中0~1023为熟知端口  1024~65535为一般端口(或动态连接端口)

传输层的功能及特点:
            分割上层应用程序
            建立连接
            使用流量控制来发送数据
            使用窗口技术来保证可靠性
            确认技术
            传输到网络层建立连接

第一章、web应用安全概论--web应用系统介绍--TCP/IP协议的更多相关文章

  1. 第一天开通博客,就粗略写一下刚了解TCP/IP协议工作过程

    Tcp/Ip协议分为四层:底层到高层顺序 链路层(硬件,网卡这些) 网络层(选择一条传输路径,如何从一台计算机请求另一条计算机) 传输层(遵循TCP(传输控制协议),UDP(用户数距协议)这些协议) ...

  2. TCP/IP协议学习(四) 基于C# Socket的Web服务器---静态资源处理

    目录 1. C# Socket通讯 2. HTTP 解析引擎 3. 资源读取和返回 4. 服务器测试和代码下载 Web服务器是Web资源的宿主,它需要处理用户端浏览器的请求,并指定对应的Web资源返回 ...

  3. 第一章 了解TCP/IP协议族

    第一章 了解TCP/IP协议族 1.1 TCP/IP协议族体系结构以及主要协议 IP和TCP协议对编写程序具有最直接的影响,后面的章节会详细的讲到. TCP/IP的体系结构有应用层,传输层,网络层,数 ...

  4. Python Web学习笔记之TCP/IP协议原理与介绍

    HTTP.FTP.SMTP.Telnet等等协议,哦!那个HTTP协议啊就是访问网页用的那个协议啊然后那个······其实······你懂得,我们应该从实际来了解他,理解网络协议的作用与功能,然后再从 ...

  5. 第12章 网络基础(1)_网络分层和TCP/IP协议族

    1. 协议的概念 (1)计算机网络中实现通信必须有一些约定.如对速率.传输代码.代码结构.传输控制步骤和出错控制等约定,这些约定即被称为通信协议 (2)在两个节点之间要成功地进行通信,两个节点之间必须 ...

  6. TCP/IP协议第一卷第三章 IP首部分析

    IP介绍 IP是TCP/IP协议族中最为核心的协议.所有的TCP.UDP.ICMP.IGMP数据都以IP数据报格式传输. IP提供不可靠.无连接的数据报传送服务. 不可靠(unreliable)它不能 ...

  7. (70)一篇文章带你熟悉 TCP/IP 协议

    作者:涤生_Woo链接:http://www.jianshu.com/p/9f3e879a4c9c來源:简书著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 同样的,本文篇幅也比较 ...

  8. CCNA第三章子网划分,变长子网掩码(VLSM)和TCP/IP排错考试要点学习笔记

    1. 子网划分的好处      缩减网络流量; 优化网络性能; 简化管理; 可以更为灵活地形成大覆盖范围的网络.    2. 如何创建子网的步骤 首先,确认所需要的网络ID数; 其次,确认每个子网中所 ...

  9. 2017.12.12 架构探险-第一章-从一个简单的web应用开始

    参考来自:<架构探险>黄勇 著 1 使用IDEA搭建MAVEN项目 1.1 搭建java项目 (1)创建java项目 为了整个书籍的项目,我创建了一个工程,在这个工程里创建了每个章节的mo ...

随机推荐

  1. Python学习日记(三)——Python基本数据类型(运算符、int、str、tuple、dict、range)

    运算符 1.算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2 ...

  2. spring boot + swagger2

    spring boot集成swagger2:     swagger2是一个基于restful的开源设计,构建,文档,访问的开源工具集.开发中它的在线可视化文档功能,可以动态生成文档,简化前后对接工作 ...

  3. macOS Mojave 10.14 无法安装brew缺少Command Line Tools for Xcode的解决办法

    问题描述: 首先我的版本是 Xcode 10.1 如果按照以前的方法安装brew 复制 1 /usr/bin/ruby -e "$(curl -fsSL https://raw.github ...

  4. go结构体的方法和普通函数

    package main import ( "fmt" "math" ) type vertex struct { X, Y float64 } //值接收者是 ...

  5. Chrome浏览器报错:ERR_UNSAFE_PORT

    今天用Chrome浏览器打开一个页面发现报错了:ERR_UNSAFE_PORT. 所以,去搜了一下发现Chrome浏览器是默认一些端口号为非安全端口的. 遇到这个问题建议更换端口号或者更换浏览器打开. ...

  6. Linux设备驱动程序 之 软中断

    软中断保留给系统中对时间要求严格以及最重要的下半部使用:目前,只有两个子系统(网络和SCSI)直接使用软中断:此外,内核定时器和tasklet都是建立在软中断上的:在使用软中断之前,要先确定为什么不能 ...

  7. hbase部署经验与坑总结

    1.本地单机部署hbase,想要使用独立zookeeper,不使用自带的 vim conf/hbase-env.sh export HBASE_MANAGES_ZK=false 设置不使用自带zook ...

  8. Event---事件详解

    1.焦点事件 焦点:使浏览器能够区分用户输入的对象,当一个元素有焦点的时候,那么他就可以接收用户的输入. 可以通过以下方式给元素设置焦点: 点击.tab.js 不是所有元素都能够接收焦点的,能够响应用 ...

  9. VUE数组操作方法的局限

    1.不能通过索引值直接设置一个项: vm.items[indexOfItem] = newValue 但是可以用set方法设置: Vue.set(example1.items,indexOfItem, ...

  10. Java同步数据结构之DelayQueue/DelayedWorkQueue

    前言 前面介绍了优先级队列PriorityBlockingQueue,顺带也说了一下PriorityQueue,两者的实现方式是一模一样的,都是采用基于数组的平衡二叉堆实现,不论入队的顺序怎么样,ta ...