V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
engHacker
V2EX  ›  问与答

网络协议如何学?

  •  
  •   engHacker · 2018-03-01 13:47:44 +08:00 · 1723 次点击
    这是一个创建于 2490 天前的主题,其中的信息可能已经有所发展或是发生改变。

    看书似乎效率很低,不少公司在 JD 中要求精通 HTTP、TCP/IP,虽然之前经历的面试暂时还没遇到很深入的问题。当然,可能与所应聘的公司有关,你遇到的关于网络协议的问题中,最难的是什么?

    谢谢各位。

    10 条回复    2018-03-01 16:43:52 +08:00
    jtsai
        1
    jtsai  
       2018-03-01 13:54:19 +08:00 via Android
    弄个抓包工具一层一层破。协议是规定死的,几个字节就几个字节,第几个字节是什么就是什么,没有什么难的。
    MeteorCat
        2
    MeteorCat  
       2018-03-01 14:02:15 +08:00 via Android   ❤️ 1
    emmmmm,网络协议得区分来看,如果是 HTTP 协议这种基本上有很多书讲解了,所以只需要找本评价最好的来说;但!是!如果是游戏行业的话那么就复杂了,因为很多游戏都是自己构建网络协议,你需要了解高位低位的转化处理,也需要知道分包粘包的概念处理,什么有时候要深入到 OSI 的方方面面,我工作这么久就佩服的就是玩转网络协议数据传输的大牛,妈蛋他们脑子到底怎么长的
    blackjar
        3
    blackjar  
       2018-03-01 14:53:41 +08:00
    学用 tcpdump 间隙了解的网络协议知识 都够应付不少面试了
    introom
        4
    introom  
       2018-03-01 14:54:30 +08:00 via Android
    别去学,用到再看。
    b821025551b
        5
    b821025551b  
       2018-03-01 14:56:11 +08:00
    @MeteorCat #2 如果人和我讨论粘包问题,那么我不认为他是大牛。
    wellsc
        6
    wellsc  
       2018-03-01 15:00:24 +08:00 via iPhone
    先看协议森林,图解系列 Http 图解 tcp/ip 入门,然后尝试自己抓包分析
    MeteorCat
        7
    MeteorCat  
       2018-03-01 15:28:53 +08:00 via Android
    @b821025551b 概念说是一回事,做是一回事,能够说的出又做得到那我各人认为是大牛
    zacharyjia
        8
    zacharyjia  
       2018-03-01 15:31:42 +08:00
    @MeteorCat 他说的是粘包的梗,看来你不知道
    MeteorCat
        9
    MeteorCat  
       2018-03-01 15:38:03 +08:00 via Android
    @zacharyjia 哈哈哈,没办法,我到现在网络协议层面还没弄懂,基本上工作也是修改以前的框架代码
    gamexg
        10
    gamexg  
       2018-03-01 16:43:52 +08:00   ❤️ 1
    看书感觉大概看一遍 tcp/ip 详解就行了。
    http 的也可以单独看 http 权威指南。

    看过后心里有了网络原理的概念,之后碰到问题在搜索吧。

    碰到的麻烦?
    服务器访问速度随着访问者距离越远越慢,抓包显示不存在丢包。用了大半天时间发现是 tcp 窗口缩放被关闭了...
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4001 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 05:20 · PVG 13:20 · LAX 21:20 · JFK 00:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.