2014 阿里C++工程师面试小记

C++ Web STL 指针 链表 虚函数 运算符 智能指针

阿里巴巴的2014实习生面试刚刚结束。饱食终日无所用心,抱着试试看的态度,去游荡了一圈,把经历分享在这里,难免言不及义看官见谅。我面试C++后台开发、前端开发。在这里总结一下经验教训。

《计算机网络》笔记 - 网络安全

AES BB84 DES DNS PEM RSA 网络 密码

密码学简介

  • 加密:明文经密钥为参数的函数变换,输出密文
  • 密码编码学、密码分析学、密码术
  • Kerckhoff原则:所有算法必须是公开的,只有密钥是保密的
  • 含糊的安全性(security by obscurity):使算法保持秘密
  • 工作因子:密码分析者面对的密钥的复杂性,对于穷举搜索,为密钥长度的指数量级
  • 密码分析问题
  • 只有密文
  • 已知明文(有了一些相匹配的密文和明文)
  • 选择明文(能够加密一些自己选择的明文)

《计算机网络》笔记 - 应用层

DNS Web POP3 RAID SMTP UDP XML 网络 IMAP

DNS-域名系统

  • DNS(Domain name system):RFC 1034、1035,调用解析器(resolver)将名字映射成IP地址

DNS名字空间

  • DNS名字空间:internet被分为200多个顶级域,每个域被分为若干子域,子域又被进一步划分,以此类推。
  • 顶级域有两种:通用域和国家域
  • 通用域包括com(商业的)、edu(教育性机构)、int(国际性组织)、mil(美国军队)、net(网络供应商)、org(非营利性组织)、biz(商贸)、info(信息)、name(人们的名字)、pro(职业)、aero(航空业)、coop(合作社)、museum(博物馆)
  • 国家域定义在ISO 3166中。

资源记录

  • 每个域都有一组与它相关联的资源记录;当解析器把域名传递给DNS时,DNS所返回的是与该域名相关联的资源记录。
  • 每条资源记录是一个5元组:Domain_name(域名)、Time_to_live(生存期)、class(类别)、type(类型)、value(值)

名字服务器

  • 权威记录:来自于管理该记录的权威机构,因此总是正确的
  • 递归查询:当解析器接收到一个域名查询时,它将该查询传递给本地的一个名字服务器,如果被查询域名落在该名字服务器的管辖范围内,那么返回权威的资源记录;如果本地没有关于它的信息,那么本地名字服务器向顶级名字服务器发送一条查询此域的消息。
  • LDAP(lightweight directory access protocol,轻量级目录访问协议):RFC 2251,定位到一般的对象,如人员、资源、服务等。

《计算机网络》笔记 - 传输层

IP LAN MAC TCP UDP WAN 网络 路由

传输服务

向上层提供的服务

  • 传输实体:传输层内部,利用网络层提供的服务,向它的用户提供高效、可靠和性价比合理的服务的硬件/软件
  • 传输服务提供者、传输服务用户

《计算机网络》笔记 - 网络层

DHCP Dijkstra IP LAN TCP UDP WAN 网络 路由 拥塞控制 服务质量

网络层的设计要点:

  • 存储-转发分组交换
  • 向传输层提供服务:独立于路由器技术、路由器数量类型拓扑关系对传输层不可见、跨越多个LAN和WAN进行统一编址
  • 无连接服务的实现:数据报、数据报子网
  • 面向连接服务的实现:虚电路(VC,virtual circuit)、虚电路子网;要求建立电路、路由器建立表项、分组只含VC号而不需目标和源地址、路由失效将终止、容易实现服务质量和拥塞控制

《计算机网络》笔记:数据链路层

IP TCP 网络 路由 检错码 纠错码 滑动窗口

设计要点

  • 为网络层提供服务:无确认的无连接服务、有确认的无连接服务、有确认的面向连接服务
  • 处理传输错误
  • 流控制:基于反馈的流控制、基于速率的流控制

上一页 下一页