Sniffer (protocol analyzer)
{{Short description|Network packet and protocol analyzer}}
{{Infobox software
| title = Sniffer
| screenshot = File:Sniffer 3 panel packet display screenshot.jpg
| logo = File:Network General Sniffer logo.jpg
| screenshot size =
| screenshot alt =
| author = {{ubl|Harry Saal|Len Shustek}}
| developer=Network General
| released = December 1986
| programming language = C, 8086 assembler
| operating system = MS-DOS
| genre = protocol analyzer
}}
The Sniffer{{Cite web|last=Joch|first=Alan|date=2001-07-23|title=Network Sniffers|url=https://www.computerworld.com/article/2583125/network-sniffers.html|access-date=2021-02-16|website=Computerworld|language=en}} was a computer network packet and protocol analyzer developed and first sold in 1986 by Network General Corporation{{Cite web|title=May 13: Network General Corporation Founded {{!}} This Day in History {{!}} Computer History Museum|url=https://www.computerhistory.org/tdih/may/13/|access-date=2021-02-16|website=www.computerhistory.org}} of Mountain View, CA. By 1994 the Sniffer had become the market leader{{Cite magazine|last=Musthaler|first=Linda|magazine=Network World|url=https://books.google.com/books?id=hhAEAAAAMBAJ&pg=PA35|title=Merger will hone net analysis focus|volume=11|issue=8|page=35|date=1994-02-21|publisher=International Data Group}} in high-end protocol analyzers. According to SEC 10-K filings{{Cite web|last=|date=June 28, 1995|title=Network General Corporation FY95 10-K|url=https://www.sec.gov/Archives/edgar/data/844643/0000912057-95-004918.txt|website=SEC Edgar database}}{{Cite web|last=|date=July 25, 1996|title=Network General Corporation FY96 10-K|url=https://www.sec.gov/Archives/edgar/data/844643/0000912057-96-013315.txt|website=SEC Edgar database}}{{Cite web|last=|date=June 27, 1997|title=Network General Corporation FY97 10-K|url=https://www.sec.gov/Archives/edgar/data/844643/0000912057-97-022239.txt|website=SEC Edgar database}} and corporate annual reports,{{Cite web|url=http://archive.org/details/1993-network-general-annual-report|title=Network General Corp. annual reports 1989-1993, 1995, 1997|via=Internet Archive}} between 1986 and March 1997 about $933M worth of Sniffers and related products and services had been sold as tools for network managers and developers.
The Sniffer was the antecedent of several generations of network protocol analyzers, of which the current most popular is Wireshark.
Background {{anchor|Sniffer history}}
The Sniffer was the first product of Network General Corporation, founded on May 13, 1986{{Cite magazine|last=Petrosky|first=Mary|url=https://books.google.com/books?id=aR0EAAAAMBAJ&pg=PA15|title=Network General smells success with Sniffer|volume=4|issue=25|page=15|magazine=Network World|date=1987-06-22|publisher=International Data Group}}{{Citation|title="Presenting Network General Corporation", July 1992| date=17 November 2021 |url=https://www.youtube.com/watch?v=EvenCsv9d4s|language=en|access-date=2021-11-17}} by Harry Saal and Len Shustek to develop and market network protocol analyzers. The inspiration was an internal test tool that had been developed within Nestar Systems,{{Cite journal|last=Prins|first=G.A.|date=November–December 1979|title=Distributing computing at the personal level|url=https://ieeexplore.ieee.org/document/5198054|journal=Electronics and Power|volume=25|issue=11|pages=765|doi=10.1049/ep.1979.0422|issn=0013-5127|url-access=subscription}} a personal computer networking company founded in October 1978 by Saal and Shustek along with Jim Hinds and Nick Fortis. In 1982 engineers John Rowlands and Chris Reed at Nestar’s UK subsidiary Zynar Ltd developed an ARCNET promiscuous packet receiver and analyzer called TART (“Transmit and Receive Totaliser”) for use as an internal engineering test tool. It used custom hardware, and software for an IBM PC written in a combination of BASIC and 8086 assembly code. When Nestar was acquired by Digital Switch Corporation (now DSC Communications) of Plano, Texas in 1986,{{Cite magazine|magazine=InfoWorld|volume=8|issue=48|page=25|first=Laurie|last=Flynn|url=https://books.google.com/books?id=hTwEAAAAMBAJ&pg=PA25|title=Nestar Says Firm's Acquisition To Improve LAN and PBX Links|date=1986-11-24|publisher=InfoWorld Media Group, Inc.|language=en}} Saal and Shustek received the rights to TART.
At Network General, Saal and Shustek initially sold TART as the “R-4903 ARCNET Line Analyzer (‘The Sniffer’)”.{{Cite book|publisher=Network General|url=http://archive.org/details/network-general-r-4903-arcnet-line-analyzer-manual-sep-1986|title=Network General R 4903 ARCNET Line Analyzer Manual Sep 1986|date=1986-09-25}} They then reengineered TART for IBM’s Token Ring network hardware, created a different user interface with software written in C, and began selling it as The Sniffer™ in December 1986.{{Cite book|publisher=Network General Corporation|url=http://archive.org/details/network-general-token-ring-sniffer-v-1.0-dec-1986|title=Network General Token Ring Sniffer V 1.0 Dec 1986|date=December 1986}} The company had four employees at the end of that year.
In April 1987 the company released an Ethernet version of the Sniffer,{{Cite book|publisher=Network General|url=http://archive.org/details/network-general-ethernet-sniffer-introduction-apr-1987|title=Network General Ethernet Sniffer Introduction Apr 1987|date=1987-04-01}}{{Cite book|publisher=Network General|url=http://archive.org/details/network-general-ethernet-sniffer-jun-1988|title=Network General Ethernet Sniffer Jun 1988|date=1988-06-01}} and in October, versions for ARCNET, StarLAN, and IBM PC Network Broadband. Protocol interpreters were written for about 100 network protocols at various levels of the protocol stack, and customers were given the ability to write their own interpreters. The product line gradually expanded to include the Distributed Sniffer System{{Cite magazine|first=Eric|last=Smalley|magazine=Network World|url=https://books.google.com/books?id=bhAEAAAAMBAJ&pg=PA4|title=Sniffer Gains Distributed Management Capabilities|volume=8|issue=13|page=4|date=1991-04-01|publisher=International Data Group}} for multiple remote network segments, the Expert Sniffer{{Cite magazine|magazine=InfoWorld|volume=14|issue=39|page=45|first=Torsten|last=Busse|url=https://books.google.com/books?id=klEEAAAAMBAJ&pg=PA45|title=Expert Sniffer to Diagnose WANs|date=1992-09-28|publisher=InfoWorld Media Group, Inc.|language=en}} for advanced problem diagnosis, and the Watchdog{{Cite magazine|magazine=InfoWorld|volume=12|issue=35|page=54|first=Peter|last=Taft|url=https://books.google.com/books?id=7zsEAAAAMBAJ&pg=PT55|title=The Watchdog Sniffs Out LAN Traffic Statistics|date=1990-08-27|publisher=InfoWorld Media Group, Inc.|language=en}} for simple network monitoring.
Development
= Nestar ARCNET Sniffer {{anchor|The original Nestar ARCNET Sniffer}} =
File:Nestar IBM PC ARCNet Network Interface Card.jpg
The ARCNET Sniffer developed as an internal test tool by Zynar used the IBM PC ARCNET Network Interface Card developed by Nestar for the PLAN networking systems. That board used the COM9026 integrated ARCNET controller from Standard Microsystems Corporation, which had been developed in collaboration with Datapoint.
There was no promiscuous mode in the SMC chip that would allow all packets to be received regardless of the destination address. So to create the Sniffer, a daughterboard{{Cite book|url=http://archive.org/details/nestar-arcnet-sniffer-internal-descriptions|title=Nestar ARCNET Sniffer Internal Descriptions|date=1982–1984|publisher=Nestar Systems}} was developed that intercepted the receive data line to the chip and manipulated the data so that every packet looked like a broadcast and was received by the chip.
File:Nestar ARCNET Sniffer board back.jpg
Since the ability to receive all packets was viewed as a violation of network privacy, the circuitry implementing it was kept secret, and the daughterboard was potted in black epoxy to discourage reverse-engineering.
The source code of the original TART/Sniffer BASIC and assembler program is available on GitHub.{{GitHub|LenShustek/NestarSystems|NestarSystems/ARCNET_Sniffer}}
= Network General Sniffer {{anchor|The 1986 Network General Sniffer}} =
File:Network General Token-Ring Sniffer photo.jpg
The Sniffer was a promiscuous mode packet receiver, which means it received a copy of all network packets without regard to what computer they were addressed to. The packets were filtered, analyzed using what is now sometimes called deep packet inspection, and stored for later examination.
The Sniffer was implemented above Microsoft’s MS-DOS operating system, and used a 40 line 80-character text-only display. The first version, the PA-400 protocol analyzer for Token-Ring networks,{{Cite web|title=1986 12 Network General Large Brochure : Free Download, Borrow, and Streaming|url=https://archive.org/details/1986-12-network-general-large-brochure|access-date=2021-06-03|website=Internet Archive|date=December 1986|language=en}} was released on a Compaq Portable II “luggable” computer that had an Intel 80286 processor, 640 KB of RAM, a 20 MB internal hard disk, a 5 ¼” floppy disk drive, and a 9” monochrome CRT screen. The retail price of the Sniffer in unit quantities was $19,995.{{Cite web|title=1987 03 16 Network General Price List End User : Free Download, Borrow, and Streaming|url=https://archive.org/details/1987-03-16-network-general-price-list-end-user|access-date=2021-06-03|website=Internet Archive|language=en}}
The two major modes of operation were:
- “capture”, in which
- packets are captured, stored, counted, and summarized
- filters control which packets are captured
- triggers control when capture should stop, perhaps because a sought-after network error condition had occurred
- “display”, in which
- packets are analyzed and interpreted
- filters control which packets are displayed
- options control which aspects of the packets are displayed
Navigation of the extensive menu system on the character-mode display was through a variation of Miller columns that were originally created by Mark S. Miller at Datapoint Corporation for their file browser. As the Sniffer manual described, “The screen shows you three panels, arranged from left to right. Immediately to the left of your current (highlighted) position is the node you just came from. Above and below you in the center panel are alternative nodes that are also reachable from the node to your left… To your right are nodes reachable from the node you're now on.”
File:Sniffer menu navigation.jpg
Pressing F10 initiated capture and a real-time display of activity.
File:Sniffer example capture screen.jpg
When capture ended, packets were analyzed and displayed in one or more of the now-standard three synchronized vertical windows: multiple packet summary, single packet decoded detail, and raw numerical packet data. Highlighting linked the selected items in each window.
In the multiple-packet summary, the default display was of information at the highest level of the protocol stack present in that packet. Other displays could be requested using the “display options” menu.
The translation of data at a particular level of the network protocol stack into user-friendly text was the job of a “protocol interpreter”, or PI. Network General provided over 100 PI’s{{Cite web|title=1991 04 The Network Is Your Business : Network General Corp. : Free Download, Borrow, and Streaming|url=https://archive.org/details/1991-04-the-network-is-your-business|access-date=2021-06-04|website=Internet Archive|date=April 1991|language=en}} for commonly-used protocols of the day:
{{Columns-list|colwidth=15em|*3COM 3+
- AppleTalk ADSP
- AppleTalk AFP
- AppleTalk ARP
- AppleTalk ASP
- AppleTalk ATP
- AppleTalk DDP
- AppleTalk ECHO
- AppleTalk KSP
- AppleTalk LAP
- AppleTalk NBP
- AppleTalk PAP
- AppleTalk RTMP
- AppleTalk ZIP
- ARP
- AT&T
- Banyan VINES AFRP
- Banyan VINES Echo
- Banyan VINES File Svc
- Banyan VINES FRP
- Banyan VINES FTP
- Banyan VINES IP
- Banyan VINES LLC
- Banyan VINES Loopback
- Banyan VINES Matchmaker
- Banyan VINES Ntwk Mgr
- Banyan VINES SPP
- Banyan VINES StreetTalk
- Banyan VINES Svr Svc
- Banyan VINES Talk
- BOOTP
- Bridge bridge mgmt
- Bridge CS-1
- Bridge terminal srvr
- Chaosnet
- ComDesign
- Cronus direct
- Cronus VLN
- Datapoint DLL
- Datapoint RCL
- Datapoint RIO
- Datapoint RMS
- DEC 911
- DEC bridge mgmt
- DEC LAN monitor
- DEC LAST
- DEC LAVC
- DEC NetBIOS
- DECNET CTERM
- DECNET DAP
- DECNET DRP
- DECNET FOUND
- DECNET LAT
- DECNET LAVC
- DECNET MOP
- DECNET NICE
- DECNET NSP
- DECNET SCP
- DNS
- ECMA internet
- EGP
- Excelan
- FTP
- GGP
- IBM SMB
- IBM SNA
- ICMP
- IONET VCS
- IONET VCS CMND
- IONET VCS DATA
- IONET VCS TRANS
- IP
- ISO ACSE
- ISO ASN.1
- ISO CMIP
- ISO Network
- ISO PPP
- ISO ROSE
- ISO Session
- ISO SMTP
- ISO Transport
- LOOP
- Loopback
- Micom test
- NBS internet
- Nestar ARCnet
- Nestar PlanSeries
- NetBIOS
- NetBIOS TCP
- Novell Netware
- PUP address translation
- RPL
- RUnix
- SMTP
- SNAP
- Sun MOUNT
- Sun NFS
- Sun PMAP
- Sun RPC
- Sun RSTAT
- Sun YP
- Symbolics private
- TCP
- Telnet
- TFTP
- TRING DLC
- TRING LLC
- TRING MAC
- TRING RI
- U-B
- Vitalink bridge mgmt
- X.25
- X.25 level 3
- X.75 internet
- Xerox BOOTP
- Xerox EGP
- Xerox GGP
- Xerox ND
- Xerox PUP
- Xerox PUP ARP
- Xerox RIP
- Xerox TFTP
- Xerox XNS
- Xyplex}}
Decoding higher protocol levels often required the interpreter to maintain state information about connections so that subsequent packets could be property interpreted. That was implemented with a combination of locally cached data within the protocol interpreter, and the ability to look back at earlier packets stored in the capture buffer.
Sniffer customers could write their own protocol interpreters to decode new or rare protocols not supported by Network General. Interpreters were written in C and linked with the rest of the Sniffer modules to create a new executable program. The procedure for creating new PIs was documented in April 1987 as part of Sniffer version 1.20.{{Cite book|publisher=Network General|url=http://archive.org/details/network-general-token-ring-sniffer-v-1.20-addendum-apr-1987|title=Network General Token Ring Sniffer V 1.20 Addendum Apr 1987|date=1987-04-01}}
In addition to supporting many network protocols, there were versions of the Sniffer that collected data from the major local area networks in use in the 1980s and early 1990s:
- IBM Token-Ring
- Token Bus
- Ethernet (thick, thin, twisted pair)
- Datapoint ARCnet
- Starlan
- AppleTalk
- Corvus Omninet
- FDDI
- ISDN
- Frame Relay
- Synchronous Data Link Control (SDLC)
- Asynchronous Transfer Mode (ATM)
- X.25
- IBM PC Network (Sytek)
Competitors
Even in the early years, the Sniffer had competition,{{Cite magazine|magazine=InfoWorld|url=https://books.google.com/books?id=OzoEAAAAMBAJ&pg=PT63|volume=11|issue=6|page=S14|first=Brett|last=Glass|title=LAN Analyzers: Powerful Tools Useful For Serious Network Analysis|date=1989-02-06|publisher=InfoWorld Media Group, Inc.|language=en}} at least for some aspects of the product. Several were, like the Sniffer, ready-to-use packaged instruments:
- Excelan's 1984 Nutcracker,{{Cite web|last=Satyanarayanan|first=M|date=September 22, 1984|title=The Excelan Nutcracker: An Evaluation|url=http://reports-archive.adm.cs.cmu.edu/anon/itc/CMU-ITC-034.pdf}} and its 1986 LANalyzer{{Cite book|publisher=Excelan|title=LANalyzer EX5000E Ethernet Network Analyzer|year=1986|url=http://www.bitsavers.org/pdf/excelan/LANalyzer/EX5000E_LANalyzer_User_Manual_Feb86.pdf}}
- Communications Machinery Corporation's DRN-1700 LanScan Ethernet Monitor
- Hewlett-Packard's HP-4972A LAN Protocol Analyzer{{Cite web|last=HP Computer Museum|title=4972A Protocol Analyzer|url=http://www.hpmuseum.net/display_item.php?hw=938|access-date=2021-02-18|website=www.hpmuseum.net}}
- Digital Equipment Corporation's LAN Traffic Monitor{{Cite web|last=Pabrai|first=Uday|title=Understanding and Using Computer Networks|url=https://lss.fnal.gov/archive/test-tm/2000/fermilab-tm-2578-cd.pdf|page=3{{hyp}}26}}
- Tektronix's TMA802 Media Analyzer{{Cite web|title=Quick and Accurate LAN Measurements|url=https://worldradiohistory.com/hd2/IDX-Service-&-Sales-IDX/Archive-PF-IDX/IDX/80s/EST-1987-12-OCR-Page-0021.pdf}}
There were also several software-only packet monitors and decoders, often running on Unix, and often with only a command-line user interface:
- tcpdump, using the Berkeley Packet Filter{{Cite web|last=McCann|first=Steven|date=December 19, 1992|title=The BSD Packet Filter: A New Architecture for User-level Packet Capture|url=https://www.tcpdump.org/papers/bpf-usenix93.pdf}} and other capture mechanisms provided by the operating system
- LANWatch,{{Cite magazine|magazine=InfoWorld|volume=15|issue=19|page=85|url=https://books.google.com/books?id=QTsEAAAAMBAJ&pg=PA85|title=LANWatch Version 3.0|date=1993-05-10|publisher=InfoWorld Media Group, Inc.|language=en}} originally from FTP Software
See also
References
{{Reflist}}
External links
- "The Ancient History of Computers and Network Sniffers" (Sharkfest 2021 keynote talk) - {{Citation|title=SF16 - Len Shustek Keynote| date=25 June 2016 |url=https://www.youtube.com/watch?v=x0hCRSfFN78|language=en|access-date=2021-08-17}}
- {{Cite conference|last=Haugdahl|first=J. S.|book-title=Proceedings [1988] 13th Conference on Local Computer Networks |title=Benchmarking LAN protocol analyzers |date=October 1988|url=https://ieeexplore.ieee.org/document/10251|pages=375–384|doi=10.1109/LCN.1988.10251|isbn=0-8186-0891-9|s2cid=336848|url-access=subscription}}
- {{Cite magazine|magazine=Network World|first=Marvin|last=Chartoff|url=https://books.google.com/books?id=mRMEAAAAMBAJ&pg=PA37|title=LAN management: What's the right tool for the job?|volume=4|issue=50|page=37|date=1987-12-14|publisher=International Data Group}}