zoukankan      html  css  js  c++  java
  • wusir FTP与HTTP文件传输之TCP Packet解析

    向服务器传输文件(上传或下载)时,FTP与HTTP是两种最常用的应用层协议,这两个协议都是基于TCP协议之上。如果深入到数据包内(Packet)进行查看时,FTP与HTTP进行文件传输时有什么特征代码呢?
    使用最常见的包截获软件WireShark来进行查看,可以发现对于FTP来说,文件的上传与下载分别有如下的特征:
     
    对于FTP上传文件,有如下特征:
    1、 TCP目标端口为21
    2、命令为“STOR”关键字(STOR应该为Store之意)
    关键字“STOR”后的参数,即是上传的文件名;
     
    对于FTP下载文件,有如下特征:
    1、TCP目标端口为21
    2、 命令为“RETR”关键字(RETR应该为Retrieve之意)
    关键字“RETR”后的参数,即是下载的文件名;
     
    对于HTTP的文件传输来说,有如下的特征:
     
    HTTP上传文件,有如下特征:
    1、 TCP目标端口为80
    2、 命令为“POST”关键字
    3、 有键名filename,该键名之后的键值即为上传文件名
     
    HTTP下载文件,有如下特征:
    1、 TCP目标端口为80
    2、 命令为“GET”关键字
    但GET命令也表现出它的多样性。因为HTTP本身就是一种Web服务协议,使用GET命令的途径有许多,比如下载页面、下载CSS文件、下载JS文件、传递QueryString参数或者是从页面上下载一个图片、下载一个文件(.pdf .rar等非网页文件),所以,GET命令下载的文件具体是做什么用途,需要分析GET命令之后的文件名来判断。
  • 相关阅读:
    ThinkJS框架入门详细教程(一)开发环境
    为什么要使用云盘?
    博客使用BOS上传图片
    网站第三方评论对比
    Angular定义服务-Learn By Doing
    原生Ajax总结
    JavaScript事件概览
    Angular学习-指令入门
    Angular中ngCookies模块介绍
    Angular Service入门
  • 原文地址:https://www.cnblogs.com/wusir/p/3405412.html
Copyright © 2011-2022 走看看