A.6 插口排错选项
查看一个T C P连接上发生的事情的另一种方法是使能插口排错选项,当然是在支持这一特征的系统中。这个特征只能工作在 T C P上(其他协议都不行),并且需要应用程序支持(当应用程序启动时,使能一个插口排错选项)。
大多数伯克利演变的实现都支持这个特征,包括S u nOS、4.4BSD和SVR4。程序使能了一个插口选项,内核就会保留在那个连接上发生的事情的一个痕迹记录。在这之后,所有记录的信息都可以使用 t r p t ( 8 )程序打印出来。使能一个插口排错选项不需要特别的许可,但是因为t r p t程序访问了内核的内存,所以运行 t r p t需要特别的权限。
s o c k程序(附录C)的- D选项支持这个特征,但是输出的信息比相应的 t c p d u m p的输出更难解析和理解。然而,我们在 2 1 . 4节确实使用它查看了T C P连接上t c p d u m p不能访问的内核变量。