查看: 1758| 回复: 3
跳转到指定楼层
上一主题 下一主题
收起左侧

[找工就业] tibco(Naperville, Chiacgo)电面

全局:

2019(1-3月)-CS硕士+短暂实习或全职不超过3个月 | 内推|芝加哥地区 码农类General实习@tibco

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
面试情况:公司 :tibco。
    通过朋友内推拿到电面, 非标准话面试,无算法题目,地点芝加哥,面试人: product manager 叫 chris的一个 白人老头。希望对大家会有帮助。另外,希望大神可以帮我 参考一下答案,都是 面完之后自己 google后 自己的理解,希望 多多批评更正。

abstract :全程50分钟,前5分钟 暖场 和个人介绍, 后分钟 自己挑一个 项目介绍。最后 40分钟,全是 tcp和udp 知识。另外,帮我内推同学 是18年 summer的去的intern,面试的也是   tcp和udp ,但深度没有我这次问的这么多。可见  tibco真的很重视TCP/UDP,但自己当时面得一塌糊涂,就当自己学习了。

内容:
1. 举可靠protocal 和 非可靠protocal 各是什么的例子?
tcp 可靠
udp 不可靠

2. 举个 实际应用的application for tcp & udp?
Tcp : 电子邮件,http, messsager
Udp : 语音电话,视频通话
. Waral dи,

3. 如何不看代码,从application外部就能区分 tcp 和 udp?(不确定)
— 查看port number
— 可以出现 数据丢失的情况,比如 视频或者电话卡顿
— 传输速度UDP > TCP
— 点对点传输 tcp, muticast 或者broadcast 为 UDP

. Χ
4.TCP: 发送过程中 constumer发送之后,如何知道 发送成功了(3次握手连接 和 4次握手 断开必须会)?
        在发送过程中,如果有一端 收到对方的数据包,一定会 发送 ack 置1 进行确认

. 1point 3acres

5. case 1 :sender 发送请求 不成功, case 2 :reciever回复acknowledge不成功,是同一种情况吗? 该 怎么办?
        case 1 和 case 2 属于 同一种情况
        sender如果没有收到 ack确认, 会重新发送一次 数据

. check 1point3acres for more.

6. case 1 :sender发送请求 不成功,case 2 :server回复acknowledge不成功,如何设计去 重新发送机制  ?(待补充更正)
1. TTL(time to live),设置timer,如果超过一定时间未收到 ack,重新发送 timeout retransmit


7. reciver 如果收到两次 相同 的数据,他用什么方法来确认这两次相同的datagram呢?
        每次的数据都有自己独特的sequence number,通过判断sequence number 来确定是否收到过该数据       
..

8. TCP 传送效率低,因为 每一次传输 都需要 等待 上一次的 ack,如果提高 发送效率?
        采用流水线传输,也就是可以一次性发送多个分组,不必收到确认才发送下一个


9. TCP: sender 同时发送好几个datagram,比如同时发送datagram 1.2.3,reciever 什么时候确认,来确保有序,需要每发一次 都进行一次确认吗,如果不是,如果做?

    收到的数据d顺序不确定,但必须等全部收到后,将第三个 sequence + 1 发送 作为 acknoledg number 来确认,相当于 3个数据只确认一次



10. TCP : 如何确认reciever 收到的数据是 sender 发送过来没有丢失的数据?(自己的理解,望更正)
        sender 发送数据时候,会 随机产生sequence number,比如 发送3个数据 sequence number分别是 3000, 3400, 3600,reciever 必须等到 三个数据都收到(通过判断        reveice 数据的sequence number) 从 而将 acknowledge number设置 为 3601 (告诉sender:我收到的数据 是这么多,你去看看有没有少 ), 并将 ACK( 告诉sender:        我收到了) 设置1 ( TIPS : ACK 和 acknowledge number 不同) 发送回给  sender。 sender 接到 返回的数据后 对比 应该有的sequence number (3600 + 1) 和         acknowlede number,如果相等,说明 对方接到数据,且 数据没有丢失。

. check 1point3acres for more.
11. UDP: 可以永久 不确认收到成功了吗?如何实现?( 当时 他给了个答案sub thread(只说了sub thread,其余的是自己的理解),自己还不是不懂,求赐教)
        不是的, 需要确认。
        使用 sub thread :1.可以增加心跳机制,每个一段时间进行一次心跳通信(heart beat),如果在该规定的时间内还没有收到心跳数据的话就认为掉线了。
                                  2. 或者使用ping 判断我网络是否还在联通

12. tcp 和 udp 的 区别 ?
. Waral dи,
tcp : 面向 连接 protocal
        全双工(send的同时,可以recieve): 所谓全双工,半双工,单工是指面向连接时才有的说法
        数据包 序列化(有序)
        可靠传输— 接收确认(ACK)
        流量控制(windowing):控制 发送快和慢
        数据分段,因此 数据包大小无限制
        数据恢复
        TCP要求系统资源较多
        byte stream形式发送
        tcp只能支持点对点
        头部开销20字节,但整个长度可变,因为 数据大小可控(每次发送,长度不固定)
Udp: 不具备数据恢复
        无连接
        无序
        不可靠传输,不能流量控制,没有 拥塞控制,因此网络出现拥塞,不能使主机的发送频率降低
        不能数据分段,因此 数据包大小有限制
        要求系统资源少
        datagram形式
        可以支持一对一,一对多,多对对,多对一(multicast broadcast)
        头部开销少,只有8个字节
       
这个帖子讲得还不错:https://segmentfault.com/a/1190000014517529
..


评分

参与人数 3大米 +7 收起 理由
breakthechain + 1 很有用的信息!
cdc542559455 + 3 给你点个赞!
wchb2016 + 3 欢迎来一亩三分地论坛!

查看全部评分


上一篇:秋招跪经总结
下一篇:拜托各位大神帮忙修改简历 感激不尽!
🔗
naihe1990 2019-3-12 03:43:08 | 只看该作者
全局:
楼主你是面的General SDE吗?我今天收到了TIBCO的电面。。。感觉计算机网络的知识都是一年前学的,现在已经都还给老师了。。。。。。。
回复

使用道具 举报

🔗
青花seph 2019-3-15 08:34:12 | 只看该作者
全局:
hi 楼主 想加一下您那位实习同学的微信可以吗?
回复

使用道具 举报

🔗
青花seph 2019-3-15 08:35:12 | 只看该作者
全局:
青花seph 发表于 2019-3-15 08:34
hi 楼主 想加一下您那位实习同学的微信可以吗?

不小心没打完就发出去了。。。我可能今年暑假去Naperville那边实习,想咨询一下租房的事情。十分感谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表