
1 virusdefender Apr 5, 2015 上面的问题一个都不会了,现在还比较熟悉的就只有三次握手和http协议了== |
2 sumhat Apr 5, 2015 via iPhone 工作了七年的码农对上述问题依然不知 |
3 typcn Apr 5, 2015 程序员也分很多种啊。。。 |
4 cosmosz Apr 5, 2015 面试什么职位要这些知识? |
5 jiang42 Apr 5, 2015 程序员分很多种 +1.。。。 |
6 wind3110991 Apr 5, 2015 第一个ARP原理可以简单回答下嘛~ 第二个不应该不知道啊 = =这个是关于TCP的缓存机制。 你dumptcp下,会看到一个win 字段数据,这就是窗口,可以告诉对方我现在缓存区的大小那么大,你不要发送超过这个大小的数据包过来 第三个= =不知道也正常吧,穿透这个概念教材里也少讲到,感觉最多和面试官吹下NAT = = |
7 dreamtrail Apr 5, 2015 这种东西要用的时候查一下就行了嘛 |
8 Andiry Apr 5, 2015 这有啥意义?不是每个程序员都会和网络打交道 |
9 zerh925 Apr 5, 2015 via iPhone 不赞同楼主的想法 |
10 ffffwh Apr 5, 2015 你问的没什么意义 我看应该问问路由算法 |
11 Septembers Apr 5, 2015 via Android 起码知道OSI模型和各层主要协议名就足够了 不奢望 |
12 helloworld00 Apr 5, 2015 2. TCP如何作flow control 用token的release速率来控制flow的速度。。。? |
13 lijingyu68 Apr 5, 2015 via iPhone 前端表示每次遇到网络问题都让后端先看看~自己查资料的速度显然不如问专门做网络相关的人来得快,何必浪费时间 |
14 leopard080264 Apr 5, 2015 via iPad new grad指本科生还是硕士生? |
15 zts1993 Apr 5, 2015 via Android 不懂楼主要招做什么的程序员 |
16 invite Apr 5, 2015 2. TCP如何作flow control 这样的问题,就不是一般网络技术人员能回答的了。 |
17 ming2050 Apr 5, 2015 via Android 你改招网络工程师得了 |
18 geeti OP @helloworld00 sliding window啊,tcp的header里有一个byte是记录这个的 |
20 billcamel Apr 5, 2015 最讨厌这种拿着书本上的东西面试的人了。面试是为了考察一个人得聪明程度,解决问题的能力。 |
21 ashong Apr 5, 2015 via iPhone 只能说lz恰巧懂得这些,就认为别人也该懂。 程序员重要的是思维逻辑,和查找资料的能力以及学习能力,需要的知识都可以随时查资料掌握 |
22 lanbing Apr 5, 2015 你说的我不懂。。但是我认为别人懂的你也不一定就懂。。。每个人都有自己的领域。。 |
23 taozhi8833998 Apr 5, 2015 硕士生表示知道的也不是很清楚 |
24 DRcoding Apr 5, 2015 很讨厌 中文 夹着一堆英文,能好好写中文? |
25 RIcter Apr 5, 2015 1. 简述一下 ARP 攻击的原理; 2. 简述常见 WAF 的工作原理以及 bypass 技巧; 3. 为什么不推荐自己创造加密算法(不是实现),如:md5(bcrypt(xxx)) 感想,不了解网络安全、密码学基础知识的人不是好码农_(:3」∠)_ |
26 north521 Apr 5, 2015 我觉得吧,好的面试官一般都是根据职位,先问下基本知识,即能不能创造产值,然后会聊聊项目,看看经验,接着引导讨论下研究的东西,看看面试者的广度和深度,这样就能判断基本水平了 |
28 juicy Apr 5, 2015 总结来说,面试就是找有缘人 |
29 RIcter Apr 5, 2015 |
30 thesunfei Apr 5, 2015 知道这个有啥用? |
31 est Apr 5, 2015 via Android 第二个题直接说 这得看你用的什么流控算法 喷回去 |
32 Septembers Apr 5, 2015 via Android @RIcter 不得当的处理会降低密码学安全性 |
35 geeti OP @billcamel 聪明人和优秀的人是有交集的两个不同集合。有很多聪明人实际碌碌无为,而很多优秀的人也不是很聪明。 面试当然是要既考虑到基础(知识广度,深度),又考虑到创造性(算法,方案解决)。 |
39 Biwood Apr 5, 2015 对于做网络安全的且技术偏底层的码农来说,这些知识还是比较重要的,对于一般的Web程序员,这些能算是加分项吧 |
40 thedarkside Apr 5, 2015 当个程序员真累~~楼主开始可没说招聘的职位是OS kernel dev~~~ |
41 xxer Apr 5, 2015 via Android 专精一方面即可 |
42 soba Apr 5, 2015 很多人活着就是为了把简单事情搞复杂把别人搞晕 一辈子搞不出个正经东西 |
43 binux Apr 5, 2015 |
45 pinepara Apr 5, 2015 全不记得,so what? |
46 lincanbin Apr 5, 2015 想问一下楼主:你实际工作中用到过以上知识吗? 你问这些,在我看来不如问:如何利用HTTP协议的Header作完整性校验这个实用性可能还强一些。 |
47 lguan Apr 5, 2015 不提职位就直接得到这种最后的这种结论,也太武断了点,唉,不是一个好码农的路过 |
48 goophy Apr 5, 2015 额,六轮面试 -_-! |
49 cloudqq Apr 5, 2015 出题的人很武断,只可能找到自己志趣相投的。 |
50 xjliao Apr 5, 2015 问的有意义嘛?你确定你招的是程序员? 还是想装装逼用的?我只想说呵呵了, 请问楼主Linux的进程之间是如何通讯的? 请把红黑树写出来吧, 楼主, 不会, 去查吧. |
51 icanfork Apr 5, 2015 via Android 面试是靠缘分的。 |
52 jyootai Apr 5, 2015 我想LZ是面试网络工程师,祝LZ好运 |
53 mhycy Apr 5, 2015 @geeti 第一个 ARP应答,无故ARP 第二个 TCP流控 第三个 UDP穿透 都能直译出来的东西有必要写英文么? 除了gratuitous arp都是有标准翻译的东西。。。 其中第二条,依据不同的算法控制有不同的控制依据,发包模式。 不指出面试者怎么知道你问的是啥?简简单单回答一个滑动窗口就能过关? 那个窗口基于什么控制的需要回答么? 第三个你让人家写个DEMO,上机么?给开发环境么?给远端服务器做调试环境么? 要是纸上写你打算给多少草稿纸?还是说简述原理就行了? 即便是内核工程师,不是网络方向的根本搞不到这块吧? 你说程序员应该懂网络基础,是不是太武断了些? 另外你这些也不是基础啊。。。 |
54 soba Apr 5, 2015 lz懂茴字八种写法吗 |
55 ianisme Apr 5, 2015 其实不用问得太深,问问他经常逛的论坛就行了 |
56 xmbaozi Apr 5, 2015 via Android 只知道滑动窗口机制。 明明很很好的中文翻译,为啥要夹带英文 |
57 0987363 Apr 5, 2015 另我想起了网上流传的一个微信消息。。 一女海龟高管喷她下属。。。。 |
58 damngood Apr 5, 2015 对于一般程序员来说, 你说的几个问题大概的东西应该还是要了解. 但是你说要熟悉到具体一来一回的流程, 甚至是对应内核里面的数据结构这些, 对于不是专业做网络这块的可能要求有点过高了. 现场来一个 hole punching demo 这种没必要吧. 能说说原理就好了吧. |
59 lilydjwg Apr 5, 2015 哇擦,这么简单的问题!! |
60 kaneg Apr 5, 2015 这几个问题要看楼主期望答案有多全面和深入,如果只是要回答个大概,这个要求还是可以的。如果需要详细介绍里面的原理,估计真的是专门做这方面研究的人才行。 |
61 donkeylucky Apr 5, 2015 @soba 有点这个味道 |
62 Kilerd Apr 5, 2015 码了好几年,三个问题都答不出来,术业有专攻,这很正常吧。 除非是很NB的全栈咯 |
63 Actrace Apr 5, 2015 面试就是找有缘人~这点没错的。 |
64 mthli Apr 5, 2015 via Android 不知道... |
65 picasso250 Apr 5, 2015 楼主是第一次面别人吗。。。。 |
66 shuiniushushu Apr 5, 2015 只懂http协议,其他的都不懂。但是要用到可以马上学。 |
67 SmiteChow Apr 5, 2015 没必要懂这么多,知道网络分层,基本的传输层和应用层协议就可以了。 |
68 sallowdish Apr 5, 2015 @mhycy 接受教育不一样用的terminology自然不同,你翻译了我如果没看lz的能一一对应,还真不知道你在说的是什么。。至于是不是作为kerne dev需不需要知道先不论,但个人觉得算是基础,本科还没的前两个都是秒答,networking的入门基础课都讲过。。 |
69 rocaltair Apr 5, 2015 你去阿里网易随机找20个程序员来问,我可以保证2/3的人答不出来。我觉得面试这种事吧 1 对到口味了。你需要的技术他都有,善。要不给你找个核物理的博士,你也得哭。 2 聪明。这点很重要,我可以认为他是一张白纸,如果他有较强的分析能力、理解能力以及学习能力,我觉得他会不会什么我不是很在意,至少如果我是一家大公司,我不会在意。 3 学习态度以及工作态度。排除牛逼与否,这点很关键 第一点,不是什么时候都能碰上的,只能说更接近而已。所以很多时候我去面试别人,更多的是看第二点。至于第三点,再傻,肯努力肯学习总能教出来的。 |
70 wecan Apr 5, 2015 via Android 楼主你这是找喷啊 |
71 crazyxin1988 Apr 5, 2015 @rocaltair 不能赞更多 老是挖掘应聘者的问题,LZ是不是也该思考一下自己的招聘思维也是否有问题 |
72 DennyDai Apr 5, 2015 如果你非要这么做,招聘请加上要求CCNA |
73 flynngao Apr 5, 2015 现实工作需要两种能力我认为,构建的能力和分析解决问题的能力,然后知识是服务这两种能力的,知识是可以快速学习的,但是能力,不是 |
75 zeayes Apr 5, 2015 六轮面试,神马公司,这么拽 |
76 gamexg Apr 5, 2015 Gratuitous ARP 现查的,其他的只有大体印象了。 |
77 billwang Apr 5, 2015 感觉楼主问的这些网络知识不是懂点的层面了。 |
78 e1eph4nt Apr 5, 2015 同意楼主,在这个跟贴里深深感觉到了拿无知当自豪的氛围。。。 |
79 des Apr 5, 2015 看成“当程序员应该少懂点网络知识” |
80 liruqi Apr 6, 2015 很好奇你们是哪家公司。不方便说,说多少人也行。 |
81 yangff Apr 6, 2015 via Android sigh |
82 jedihy Apr 6, 2015 @geeti TCP Header里面的window是通告窗口,advertise window,不是sliding window。这个字段是16位的=2个byte。 如果没有中间公网主机,UDP穿墙基本穿不了。 这些东西对于OS kernel dev 确实是需要知道的。 |
83 Andiry Apr 6, 2015 @sallowdish 本科都没毕业当然是秒答了,等你工作个几年再来回答试试。 |
84 sinxccc Apr 6, 2015 常年工作在二层三层的路由器码工表示问题 2 和 3 都得先想想才能回答,而且把握也不是十足(_) |
89 jarlyyn Apr 6, 2015 |
90 JackWindows Apr 6, 2015 via iPad 我觉得都挺简单啊,我本科刚毕业,数学系的,这些知识都是平时看着玩学来的。我大一的时候学过ccna,但是现在证书已经过期了,而且我认为ccna学到的内容根本不足以回答这三个问题;ccna是以配思科交换机为主的,真正的计算机网络还是要靠自己学。 1. arp原理就是第一次找人的时候喊一句人名,然后那个人就跑出来应答一下嘛 2. tcp流控就是靠window机制嘛,window决定单次连续传输的数据量,一开始挺小,然后指数增加,遇到丢包之后减半,最后进入线性增长模式。当然这是标准的拥塞控制,还有其他各种变种。 3. udp协议的nat打洞很简单啊,预测下nat src port增长规则就好了啊,比如iptables的默认nat规则是下一条流映射到的src port加1,知道这个之后让另一方直接往预测的端口发包就可以了。当然这个还跟不同的nat实现有关,nat根据实现还分很多种模式,最难打洞的应该算是symmetry的吧。 |
91 q397064399 Apr 6, 2015 via Android 1.arp属于二层协议,不涉及相关网络开发,二层根本无需了解,osi还分了7层,实际上只有4层协议,给应用程序程序员用的就是tcp udp,你招个javaee 然后说 我们要你精通 tcp/ip协议,这tm是扯犊子 2.tcp window 大小 不学网络工程相关的基本上不知道 3.nat穿透 不同的类型nat完全不一样 |
92 xiparos Apr 6, 2015 程序员也分很多种 +1 |
93 geeti OP @jarlyyn 真服了。有什么关系么?题又不是我出的,只是我随机从题库指定给我的category里挑。我觉得挺基础,但面试的人却完全不懂,感慨一下咋了?公司所有员工(入职1年以上)每天半小时属于面试时间。 |
95 coolcfan Apr 6, 2015 一直看到 OS Kernel Dev 才明白…… 建议补充一下,把职位写上…… |
96 fgwww Apr 6, 2015 via iPad 不会面试就别面试了。就跟去问java程序员c++模版差不多的感觉 |
97 deepreader Apr 6, 2015 作为一个new grad,我就是来长下见识而已。 |
98 fullstack0xyz Apr 6, 2015 做底层的对网络不应该很熟悉么 非科班的野生web程序员,大概翻过(没看完)TCP/IP详解卷一,自顶向下计算机网络,第三个问题答不上,前两个还是能扯到点上。 另外,夹杂点专业术语名词也没啥问题吧,难道问你http协议的时候说,来给我讲讲“超文本传输协议”? |
99 Andiry Apr 6, 2015 OS kernel dev 应该了解的知识应该是内存管理,同步,调度,中断,驱动框架,文件系统,DMA,MMU/IOMMU这些吧。这么多方面的内容,随便问点什么也比什么http协议有用。 |