throbber
00000001
`
` 1000000000
`
`USOU731310031
`
`(12}
`
`United States Patent
`Turner et at.
`
`(10) Patent No.:
`
`(45} Date of Patent:
`
`US 7,313,100 Bl
`Dec. 25, 2007
`
`(54)
`
`(75)
`
`NETWORK DEVICE HAVING ACCOUNTING
`SERVICE CARD
`
`6.182.146 Bl
`6.321.338 Bl’“
`
`1:"2001 Graham-Cumming.
`11-'200|
`Porras el al.
`
`Jr.
`726-"2.
`
`Inventors: Stephen W Turner. Menlo Park. CA
`(US): IIsien-Chttng Won. Fremont. CA
`(US); Sanjay Kalra. San Jose. CA
`(US); Truman Joe. Mountain View. CA
`(US); Wendy R Cartee. Los Altos. CA
`(US)
`
`(Continued)
`FOREIGN PATENT DOCUMENTS
`
`W0
`W0
`
`8-"1998
`WO 98366332 AI “‘
`W0 2084920 AB "‘ 10;:2002
`
`(73)
`
`Assigncc: Juniper Networks, Inc.. Sunnyvale.
`CA (US)
`
`OTHER PUBLICATIONS
`
`(*1
`
`Notice:
`
`Subject to any disclaimer. the term of this
`patent
`is extended or adjusted under 35
`U.S.C. 154(1)) by 1034 days.
`
`Weaver. AL“. et al.. "A Real-Time Monitor for Token Ring Net-
`works.” Military Conununications Conference. 1989. MILCOM
`‘89. Oct. 1989. vol. 3. pp. 794—798.*
`
`(21)
`
`Appl. No.: 107228.150
`
`(22)
`
`Filed:
`
`Aug. 26, 2002
`
`(51)
`
`Int. CI.
`11041. 72/26
`
`(52)
`
`U.S. Cl.
`
`(2006.01)
`
`3707253;3707244:3707252;
`3707392
`
`(58)
`
`(56)
`
`Field of Classification Search ................ 3707235.
`3707242—244. 250. 252. 253, 389. 392. 396.
`3707469. 471: 7091223. 224. 229
`See application lilc for complete search history.
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`3.962.681 A
`4.032.899 A
`4.600.319 A
`5.408.539 A
`5.490.252 A ‘3
`5.509.123 A
`5.568.471 A “‘
`6.011.795 A
`6.018.765 A
`6.148.335 A ’°
`
`6-'1976 Requa et al.
`6:"1977 Jenny et a1.
`71986 Everett. Jr.
`431995 Finlay el al.
`2:"1996 Macera et a1.
`451996 Dobbins ct a1.
`10.-'1996 Hershey ct a].
`“2000 Varghese et a].
`1"2000 Durana et a1.
`11-'2000 Haggard et al.
`
`7093249
`
`370-245
`
`709924
`
`(Continued)
`
`(‘hi P113111
`Primary Examiner
`Assistant Examiner"- -Donald 1. Mills
`
`[74} glimmer. Agent. or Firm—Shumaker & Sieifert PA.
`
`(57)
`
`ABSTRACT
`
`A network device integrates accounting functionality for
`generation of flow statistics with packet intercept function-
`ality to provide a comprehensive traffic analysis environ-
`ment. The device comprises a set of network interface cards
`to receive packets from a network, and a set of accounting
`service cards to calculate [low statistics for the packets. The
`device further comprises a control unit to receive the net-
`work packets from the interface cards and distribute the
`packets to the set of accounting service cards. The account-
`ing service card comprises an interface for insertion within
`a slot of a network device. Accounting service cards may be
`added to easily scale the network device to support higher
`bandwidth conununication links. such as OC—3. OC—12.
`CCU-48 and higher rate links. Additional accounting service
`cards may be used for purposes of redtuldancy to suppon
`continuous. uninterrupted packet processing and accounting
`in the event oi'a card failure.
`
`24 Claims, 9 Drawing Sheets
`
`
`
`
`
`SAMPLE]!
`FLOW
`RECORDS TWFE
`
`Palo Alto Networks V. Sable Networks
`
`IPR2020-01712
`
`EX1023
`
`EX1023
`Palo Alto Networks v. Sable Networks
`IPR2020-01712
`
`

`

`US 7,313,100 B1
`
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`OTHER PUBLICATIONS
`
`6.392.996 Bl
`6.499.088 Bl
`6.563.796 131 ‘V
`6.590.898 Bl
`6.594.268 Bl
`6.598.034 Bl
`6.735.201 Bl
`6.751.663 Bl
`6.826.713 Bl
`6.983.294 B2 ’3
`6.985.956 B2 “
`7.114.008 B2
`200230141343 Al
`2003.?”0005145 Al
`20033000769 Al
`2003.30214913 Al
`
`5.02002
`1232002
`5.92003
`7.52003
`7.52003
`7.52003
`5’2004
`6.42004
`1 l 32004
`1.32006
`132006
`932005
`1032002
`1:200}
`552003
`1 1.52003
`
`Hjalmtysson
`chler et a].
`Saito
`Uzun
`Aukia et a].
`Kloth
`
`Mahajan et a1.
`Farrell et a].
`
`Beasley et 3].
`Jones et at.
`Luke or at.
`
`Jungck et al.
`Bays
`Bollard
`McCollom et al.
`Kan et a].
`
`.. 370-"252
`
`. 707.-"202
`. 70932 29
`
`.11.. “Performance Evaluation for Distributed System
`Dini. P. et
`Components.“ Proceedings of IEEE Second lnlemational Workshop
`on Systems Management. Jun. 1996. pp. 20-293“
`Integrated Services Adapter. 2000. Cisco Systems. Data Sheet. pp.
`[—6.
`1101:3151rW.cisoo.cowwarp-“publicfccw’pdfi faa’ivaaiiasvaa!
`prodlita'ism2_ds.pdl‘.
`“'l'hc CAIDA Web Site.“ m.caida.org:". 2000.
`“About Endace.“ wwsndacexom-‘l 2000.
`“Cisco IOS NetFlow.” wvtrw.cisco.comr'warpfpublicx'732fTechfmnpx'
`net flow-"index .sh tml. 2002.
`U .3. Appl. No. 105188.567. enlilled "Adaplive Network Flow
`Analysis". fiied Jul. 2. 2002. Scott Mackie.
`U.S. Appl. No. 10f228.l32. entitled “Adaptive Network Router".
`filed Aug. 26. 2002. Woo at a].
`U.S. Appl. No. 101928.114. entitled “Network Router Having Inte-
`grated Flow Accounting and Packet Interception". filed Aug. 26.
`2002. Woo el al.
`U.S. Appl. No. 107241.785. entitled “Rate-Controlled Transmission
`ofTraffic Flow Infonnation”. filed Sep. [0. 2002. Sandeep Jain.
`
`* cited by examiner
`
`

`

`US. Patent
`
`Dec. 25, 2007
`
`Sheet 1 OH)
`
`US 7,313,100 B1
`
`/ 2
`
`
`
`16
`
`
`REAL-TIME
`
`
`PACKET
`ACCOUNTING
`
`SERVER
`ANALYZER
`
`
`
`19
`E
`
`
`
`
`
`

`

`US. Patent
`
`Dec. 25, 200’?
`
`Sheet 2 of 9
`
`US 7,313,100 B1
`
`02_._.ZDOOU<
`
`mun—3005—
`
`.65on
`
`:2:
`
`mm
`
`N.07.
`
`/
`
`/
`
`o\./..rf
`IIxmoafizt\\I11
`
`4mm/em
`
`
`
`
`

`

`US. Patent
`
`Dec. 25, 2007
`
`Sheet 3 OH)
`
`US 7,313,100 B1
`
`TUNNNELSC
`
`ACCOUNHNG
`SC
`
`ENCRYPNON
`SC
`
`FIG. 3
`
`CONTROLUNW
`
`E
`
`IO
`
`

`

`US. Patent
`
`Dec. 25, 2007
`
`Sheet 4 OH)
`
`US 7,313,100 B1
`
`PACKET PAC KET
`
`STREAM STREAM
`A
`B
`
`ACCOSLENTING
`a
`
`AI
`L.
`\T’
`+T55
`
`TUNNEL
`
`sc

`
`1B
`
`52
`
`x—'
`55;
`
`ENCRYPTION
`so
`
`A &
`
`A ‘
`
`FLOW
`RECORDS
`
`SAMPLED
`TRAFFIC
`
`FIG.4
`
`

`

`US. Patent
`
`Dec. 25, 2007
`
`Sheet 5 OH)
`
`US 7,313,100 B1
`
`36
`
`
`IXCK3()LHH11hH313EHRVHCHE
`
`
`
`CARD
`
`
`
`UNW
`INTERFACE
`zg
`Z;
`
`
`ACCOUNNNG
`
`
`
`
`
`68
`
`FWC3.5
`
`

`

`US. Patent
`
`Dec. 25, 200’?
`
`Sheet 6 of 9
`
`US 7,313,100 B1
`
`
`
`20.5.4510".z.ZO_._.<_2¢O"_Z_
`
`
`
`ozzbomOz_oz<>>~_0u_
`
`mmmm
`
`Kuhn—E
`
`mm
`
`
`
`0.0."—
`
`3Um
`
`OZPZDOOO<
`
`Um
`
`.vm
`
`20Fm>mozm
`
`ow
`
`wm
`
`omezzzah
`
`fl
`
`
`
`mug—62mUZFZ=000<
`
`mzazu02:30”.Gzfiom<§z0u
`
`
`I..Hon:.3?
`
`so...
`
`NS.
`
`
`
`._._ZDAOKHZOO
`
`om
`\
`
`3E50”.3,
`
`
`
`
`
`
`

`

`US. Patent
`
`Dec. 25, 2007
`
`Sheet 7 OH)
`
`US 7,313,100 B1
`
`CARD
`
`
`
`ACCOUNTING SERVICE
`
`
`
`
`113
`
`
`\
`
`INTERFACE
`BUFFER
`
`
`
`112
`
`ACCOUNTING
`uurr
`
`11E.
`
`m
`
`
`
`114
`
`FIG. 7
`
`

`

`US. Patent
`
`Dec. 25, 2007
`
`Sheet 8 OH)
`
`US 7,313,100 B1
`
`RECEIVE NETWORK PACKETSAND
`GENERATE FIRST AND SECOND
`
`
`
`FILTER SECOND PACKET
`STREAM TO PRODUCE
`
`
`
`
`
`DISTRIBUTE PACKETS OF FIRST
`STREAM TO ACCOUNTING
`CARDS FOR CALCULATION OF
`FLOW RECORDS
`
`
`
`
`/ 124
`
`RECEIVE FLOW RECORDS AND
`ORIGINAL PACKETS FROM
`ACCOUNTING CARDS
`
`126
`
`DUPLICATE PACKET STREAMS
`SAMPLED PACKET FLOWS
`ANALYZE PAC KET FLOWS
`
`
`FORWARD PACKETS
`ACCORDING TO FORWARDING
`INFORMATION
`
`
`
`NETWORK
`
`
`CONDITION?
`128
`
`
`
`
`
`
`ANALYZE FLOW RECORDS
`
`UPDATE FORWARDING
`INFORMATION
`
`
`
`130
`
`US Pl CIOUS
`F LOWS?
`
`
`
`
`[—
`
`
`
`FORWARD NETWORK ATTACK
`INFORMATION TO
`NEIGHBORING ROUTERS
`
`
`
`
`
`
`UPDATE FILTER TO INCLUDE
`SUSPICIOUS FLOWS
`
`
`
`
`
`FIG. 8
`
`

`

`US. Patent
`
`Dec. 25, 200’?
`
`Sheet 9 of 9
`
`US 7,313,100 B1
`
`
`
`FIG. 9
`
`

`

`US ?,313,100 B1
`
`1
`NETWORK DEVICE HAVING ACCOUNTING
`SERVICE CARI)
`
`TECHNICAL FIELD
`
`The invention relates to computer networks and. more
`particularly, to techniques for analyzing traflic flow within
`computer networks.
`
`BACKGROU‘N D
`
`10
`
`A computer network is a collection of interconnected
`computing devices that can exchange data and share
`resources. In a packet-based network, such as the Internet.
`the computing devices communicate data by dividing the
`data into small blocks called packets. which are individually
`routed across the network from a source device to a desti-
`nation device. The destination device extracts the data from
`
`the packets and assembles the data into its original form.
`Dividing the data into packets enables the source device to
`resend only those individual packets that may be lost during
`transmission.
`
`The packets are communicated according to a communi-
`cation protocol
`that defines the format of the packet. A
`typical packet. for example.
`includes a header carrying
`source and destination information, as well as a payload that
`carries the actual data. The de facto standard for communi—
`cation in conventional packet-based networks, including the
`Internet, is the Intemet Protocol UP).
`A system administrator or other user often makes use of
`a network analyzer to monitor network traffic and debug
`network problems. In general. a network analyzer is a tool
`that captures data from a network and presents the data to the
`user. The network analyzer typically allows the user to
`browse the captured data, and view summary and detail
`information for each packet. Accordingly. the user can view
`the network trailic flowing between devices on the network.
`The information collected during traffic flow analysis may
`be used for network planning, traffic engineering, network
`monitoring, usage—based billing and the like. Many conven-
`tional network analyzers. such as NetF low, NeTraMet and
`lilowScan. use software applications to collect traffic flow
`information.
`
`The analyzers typically monitor and collect packets hav-
`ing routing information that matches criteria specified by the
`system administrator. The system administrator may specify,
`for example. source and destination Internet Protocol (IP)
`addresses. source and destination port numbers, protocol
`type. type of service (1'08) and input interface injomiation.
`The analyzers typically collect packets matching the speci-
`fied criteria. and construct flow analysis diagrams. Convert-
`tional network analyzers often make use of sampling tech-
`niques to selectively sample the packets. and present a
`statistically generated view of the traffic within the network.
`Consequently, the statistics generated by the network anav
`lyzer may not only be limited to specified flows, but may be
`relatively inaccurate.
`
`SWMARY
`
`In general. the invention is directed to techniques for
`monitoring and analyzing traffic flows within a network. A
`network monitor, in accordance with the principles of the
`invention, integrates accounting functionality for generation
`of flow statistics with packet intercept firntionality to pro-
`vide a comprehensive traffic analysis environment.
`
`3t]
`
`4t]
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`In one embodiment. an apparatus comprises a set of
`interface cards to receive packets front a network, and a set
`o'faccotuiting service cards to calculate flow statistics for the
`packets. The apparatus further comprises a control unit to
`receive the packets from the interface cards and distribute
`the packets to the set of accounting service cards.
`111 one embodiment, an accounting service card comprises
`an interface for insertion within a slot of a network device.
`
`and an accounting unit to receive packets from the hemork
`device via the interface. The accounting unit calculates flow
`statistics based on the network packets.
`In another embodiment. a method comprises receiving
`packets from a network via an interface card of a network
`device. and distributing the packets to a set of accounting
`service cards of the network device. The method further
`
`comprises calculating with the accounting service cards How
`statistics for the packets.
`In another embodiment, a method for computing flow
`statistics within an accounting service card of a network
`device comprises receiving packets from a control unit of a
`network router via an interface. and calculating fiow statis—
`tics for the packets. The method further comprises output-
`ting a packet stream carrying the flow statistics and the
`received packets to the control unit for routing in accordance
`with routing information for the network.
`The techniques may provide one or more advantages. For
`example. according to the principles of the invention. mul-
`tiple accounting service cards may be added to easily scale
`the network monitor to support monitoring and accounting
`for higher bandwidth communication links. Depending upon
`processing power, two accounting service cards may be used
`to provide accounting for a single OC-3 communication
`link. while four cards and sixteen cards may be used to
`monitor OCT-12 and 0048 links, respectively. As another
`example. eight accounting service cards may be used to
`monitor four 003 links. Additional accounting service
`cards may be used for purposes of redundancy to support
`continuous, uninterrttpted packet processing and accounting
`in the event of card failure.
`
`intercept
`the flow analysis and packet
`Consequently.
`features may be readily integrated within a router for a
`packet-based network. The router may, for example. operate
`as a core router within the Internet to route packets received
`from high data rate communication links, such as O'C-3.
`OCT-12. OC-48, and greater communication links. The router
`may integrate accounting functionality to generate flow
`records for routed packets. as well as intercept features to
`capture packets for select packet flows. In this manner, the
`router can adjust routing functions based on the generated
`flow records and intercepted packets, thereby dynamically
`reacting to network events. such as Denial of Service (DOS)
`attacks and other network security violations.
`The details of one or more embodiments of the invention
`
`are set forth in the accompanying drawings and the descrip«
`tion below. Other features. objects. and advantages of the
`invention will be apparent from the description and draw-
`ings. and from the claims.
`
`BRIEF DESCRIPTION OF DRAWINGS
`
`FIG. 1 illustrates an exemplary system in which a network
`monitor integrates accounting functionality for generation of
`flow records along with packet intercept functionality to
`provide a comprehensive traffic analysis environment
`in
`accordeuice with the principles of the invention.
`
`

`

`3
`
`4
`
`US ?,313,100 El
`
`FIG. 2 is a block diagram illustrating an example embodi-
`ment of a network monitor consistent with the principles of
`the invention.
`
`FIG. 3 is a block diagram illustrating another exemplary
`embodiment of a network monitor in further detail.
`FIG. 4 is a block diagram illustrating the [low of packets
`through the various components of a network monitor in
`accordance with the principles of the invention.
`FIG. 5 is a block diagram illustrating an example embodi-
`ment of an accounting service card in accordance with the
`principles of the invention.
`FIG. 6 is a block diagram illustrating an example embodi-
`tnent ofa router that incorporates accounting and intercept
`functionality.
`FIG. 7 is a block diagram illustrating another embodiment
`of an accounting service card.
`FIG. 8 is a flowchart illustrating operation of router that
`integrates traffic analysis and intercept features with routing
`functionality to dynamically react to network events. such as
`Denial of Service [DOS] attacks and other network security
`violations.
`
`FIG. 9 is a schematic diagram illustrating an exemplary
`embodiment of a network router that integrates trailic analy-
`sis and intercept features with routing functionality.
`
`DETAILED DESCRIPTION
`
`FIG. 1 illustrates an exemplary system 2 in which a
`network monitor 4 integrates accounting functionality for
`generation of [low records with packet intercept ftmction-
`ality to provide a comprehensive traffic analysis environ-
`ment in accordance with the principles of the invention.
`Network monitor 4 is coupled to network 6 for tnonitoring
`network traffic. Network 6 may be formed by an intercon-
`nected group of autonomous systems, each representing an
`independent administrative domain having a variety of net-
`worked resources capable of packet-based communication.
`For example, network 6 may include servers. workstations.
`network printers and fax machines. gateways. routers. and
`the like. Each autonomous system within network 6 typi-
`cally includes at least one router for sharing routing infor-
`mation with. and forwarding packets to, the other autono~
`mous systems via communication links.
`The term “packet“ is used herein to generally describe a
`unit of data communicated between resources in conform-
`
`ance with a communication protocol. The principles of the
`invention may be readily applied to a variety of protocols.
`such as the Transmission Control Protocol (TCP). the User
`Datagram Protocol (UDP), the Internet Protocol (IP), Asyn—
`chronous Transfer Mode, Frame Relay, and the like. Accord—
`ingly. “packet” is used to encompass any such unit ofdat'a.
`and may be interchanged with the temi “cell,“ or other
`similar terms used in such protocols to describe a unit ofdata
`communicated between resources within the network.
`As described. network monitor 4 includes one or more
`accounting modules that generate accttrate flow statistics for
`trafiic within network 6. More specifically, network monitor
`4 captures packets from one or more links within network 6,
`and can generate flow statistiCs for each packet flow within
`the link. As network monitor 4 receives packets,
`the
`accounting modules associate the network packets with
`respective packet flows. and update the statistics for the
`packets flows. For example, the accounting modules may
`maintain an accurate packet count, byte count, source IP
`address. destination IP address, next hop IP address. input
`interface information. output
`interface information.
`total
`octets sent,
`flow start
`time= flow end time. source and
`
`3t]
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`destination port numbers, TC P flags. IP type of service.
`originating AS. source address prefix mask bits. destination
`address prefix mask bits. and the like. for each packet flow.
`The accounting modules provide real-time accounting
`capabilities for maintaining accurate flow statistics for all of
`the packets received by network monitor 4. In particular. as
`described herein, the accounting modules can monitor and
`generate statistics for high traflic rates, even core traflic rates
`of the Internet, including OCT-3, (DC-12, 0(7-48, and higher
`rates.
`
`10
`
`Network monitor 4 outputs a stream of flow records 14
`that carry flow statistics for the captured packets. Network
`monitor 4 may, for example, output flow records 14 carrying
`accounting data for each flow. such as a number of packets,
`a number of bytes. a time of capturing a first packet for the
`flow. a time of capturing a most recent packet for the flow.
`an incoming interface. an outgoing interface. a source!
`destination network mask, a sourcefdestination Autonomous
`System (AS) number. and the like. Accounting server [0
`receives [low records 14. and updates an accounting system
`based on the flow records for further detailed analysis.
`In addition. network monitor 4 provides intercept capa-
`bilities that allow a real-time packet analyzer 12 to monitor
`specific packet flows within network 4. Network monitor 4
`outputs a stream of packets 16 to real-time packet analyzer
`12 for further analysis. The stream of packets 16 comprises
`a subset of the packets captured from network 6. ln particu-
`lar. network monitor 4 intercepts packets for one or more
`selected packet flows within network 4. and outputs the
`intercepted packets as a stream of packets l6. Packet ana-
`lyzer 12 receives the stream of packets l6. and analyzes the
`packets
`to identify any suspicious packet
`flows. For
`example. packet analyzer 12 may identify packet flows
`arising from Denial of Service (DOS) attacks and other
`network security violations.
`A system administrator may provide intercept infomiation
`to network monitor 4 that specifies a set of packet flows for
`which to capture packets. The system administrator may
`provide the intercept information directly. e.g.. via a key-
`board, mouse or other input mechanism. to control inter-
`ception of packet flows. In addition. an administrator may
`remotely provide the routing iuionnation to network moni—
`tor 4 via a remote management protocol. In this manner. the
`administrator may selectively define the packet flows. and
`packets within a given flow. that are intercepted for analysis.
`Network monitor 4 may also control the stream of inter-
`cepted packets 16 based on feedback from accounting server
`10. More specifically. accounting server 10 may perform
`preliminary traffic analysis based on the flow records 14
`received from network monitor 4. and provides filter infor—
`mation 18 to the network monitor to control the interception
`and forwarding of packets floats lo packet analyzer 12 for
`further analysis. In this manner. network monitor 4 inte-
`grates accounting functional ity for generation of flow
`records 14 along with packet
`intercept functionality to
`provide a comprehensive tralfic analysis environment.
`Although illustrated as a standalone apparatus. the fea—
`tures of network monitor 4 may be integrated within a
`network device. For example. as described in detail below.
`the feature may be integrated within a router. Other network
`devices in which the features may be integrated include
`gateways, switches. servers. workstations. and the like.
`FIG. 2 is a block diagram illustrating in further detail an
`example embodiment of network monitor 4 coupled to
`communication links 24 of network 6. As illustrated, net—
`work 6 includes routers 20A. 208 (“routers 20") coupled via
`communication links 24. Routers 20 may comprise conven-
`
`

`

`5
`
`6
`
`US ?,313,100 El
`
`tional routers that forward packets in accordance with a
`topology of network 6. Communication links 24 may com-
`prise uni-directional optical
`links
`for carrying packets
`between routers 20 at high data rates. such as OC-3. 0C12.
`0C -48 and greater rates. Optical splitters 25A. 25B (“optical
`splitters 25") may he insened within communication links
`24 to passively collect optical data transmitted and received
`between routers 20.
`Network monitor 4 includes two ports 26A, 268 for
`receiving the optical data 21A. 218. respectively. and for-
`warding the data in digital
`form to control unit 28. As
`discussed in detail. control unit 28 merges the inbound data
`21A. 2113 received from ports 26A, 261-3, and digitally
`generates two identical packets streams 27A. 27B from the
`data. Control unit 28 applies filter 30 to packet stream 27A
`to selectively capture packet flows 16 for forwarding to
`packet analyzer 12 via output port 26C. In addition. control
`unit 28 distributes packets of the second stream 278 to
`accounting modules 32. Accounting modules 32 generate
`llow records 14 based on all of the packets of data stream
`27B, i.e.. all ofthe packets received form optical splitters 25.
`and forward flow records 14 to accounting server 10 via
`output port 26!).
`Accounting modules 32 may bulfer flow records 14 for a
`given packet flow until the How “expires." i.e.. when the
`accounting modules 32 detect inactivity for the flow for a
`configurable period of time. e.g._. 30 minutes. Accounting
`modules 32 may periodically output batches of flow records
`14 for all flows that have recently expired, e.g.. every fifteen,
`thirty or sixty seconds. For packet flows that remain active
`for long durations, accounting modules 32 may be config-
`ured to automatically expire the packet flows after a defined
`duration. e.g.. 30 or 60 minutes. Upon marking the active
`packet flow as expired. accounting modules 32 may output
`one or more flow records 14 for the packet flow, and may
`reset the statistics for the packet flow. Alternatively. account—
`ing modules may output flow records 114 without resetting
`the statistics for the active packet flow.
`FIG. 3 is a block diagram illustrating another exemplary
`embodiment of a network monitor 4.
`[n the illustrated
`embodiment. network monitor 4 includes a chassis 33 for
`housing control unit 42. Chassis 33 has a number of slots
`(not shown) for receiving a set of cards, including interface
`cards [IFCs) 34. accounting service cards (ACCOUNTING
`SCs) 36. an encryption service card {ENCRYPTION SC) 38.
`and a tunnel service card ('IUNNEL SC) 40. Each card may
`be inserted into a corresponding slot of chassis 33 for
`electrically coupling the card to control unit 42 via a bus.
`backplane. or other electrical communication mechanism.
`Interface cards 34 include ports for receiving inbound
`data 21 from optical splitters 25. and for outputting flow
`records 14 and intercepted packet flows 16. Accordingly.
`interface cards 34 include a number of ports (not shown) for
`coupling with communication links.
`Accounting service cards 36 each include one or more
`accounting modules that generate flow records based on
`packets received from control unit 42. Each accounting
`service card 36 may. for example.
`include one or more
`microprocessors. l-‘PGAs, ASICs. or other components. As
`described. control unit 42 distributes packets to accounting
`service cards 36 for accounting and generation of flow
`records 14.
`in one embodiment. control unit 42 distributes
`the packets of a common flow to a common accounting
`service card 36. In other words. control unit 42 distributes
`packet flows across accounting service cards 36. and ensures
`that packets of any particular flow are distributed to a
`common one of accotmting service cards 36. In this manner.
`
`each ol'accounting service cards can generate complete flow
`records for the packet flows for which the card receives
`packets.
`In one embodiment. control unit 42 applies a hashing
`function to at least a portion of the header for each packet to
`ensure that packet flows are distributed across accounting
`service cards 36, and that packets of a packet flow are
`distributed to a common one ofthe accounting service cards
`36. Control ttnit 42 may apply a hashing function to at least
`one of a source network address. a destination network
`
`10
`
`for the packet.
`address. and a cormnunication protocol
`Control unit 42 may apply the hash function to header
`information with each packet to generate a hash value. and
`distribute each packet to one ofthe accounting service cards
`36 based on the calculated hash values. Furthermore. por-
`tions of the header inl'onnation may be selected to cause
`packet fragments associated with a common one of the
`network packet to be distributed to a common one of the
`accounting service cards. For example. layer 4 port infor-
`mation may be ignored. which may not be present for packet
`fragments.
`Multiple accotuIting service cards 36 may be added to
`easily scale network monitor 4 to support monitoring and
`accounting for higher bandwidth communication links. For
`example. depending upon processing power, two accounting
`service cards 36 may be used to provide accounting for a
`single OCT-3 communication link. while four cards and
`sixteen cards may be used to monitor OCT—12 and 0048
`links. respectively. As another example. eight accounting
`service cards 36 may be used to monitor four OCT-3 links.
`Additional accounting service cards 36 may be used for
`purposes of redundancy to support continuous. uninter-
`rupted packet processing and accounting in the event of card
`failure.
`As described with respect to accounting modules 32 (F 1G.
`2). accounting service cards 36 may output the flow records
`'14 for a given packet flow when the flow “expires." i.e..
`when the accounting service cards 36 detect inactivity for
`the flows for a configurable period. For example. accounting
`service cards 36 may make use of inactivity timers to
`determine when to output llow records. For packet [lows that
`remain active for long durations. accounting service cards 36
`may be configured to automatically expire the packet flows
`alter a defined duration. e.g.. 30 or 60 minutes.
`If accounting server It} and packet analyzer 12 are co-
`located with network monitor 4. control unit 42 may direct
`the flow records and intercepted packets directly to an
`appropriate output port of interface cards 34. In environ-
`ments where accounting server 10 and packet analyzer 12
`are located at remote destinations from network monitor 4.
`control unit 42 may make use of encryption service card 38
`and tunnel service card 40 to preserve security.
`[Encryption service card 38 provides cryptographic finic-
`tionalily to network monitor 4. In particular. control unit 42
`may forward flow records generated by accounting service
`cards 36 to encryption service card 38 prior to forwarding to
`accounting server 10.
`In addition, control unit 42 may
`forward the intercepted packets for the select packet flows to
`encryption service card 38 for encryption prior to forward-
`ing to packet analyzer 12.
`Network monitor 4 may also include a network tunneling
`mechanism for relaying the flow records and intercepted
`packets through tunnels. Encryption service card 38 may
`provide IPSec tunnel, while tunnel service card 40 may
`provide ORE and IPII’ tunnels. Tunnel service card 40
`aggregates traflic received from interface cards 34. and
`returns the traflic back to control unit 42 for output via
`
`3t]
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`

`

`7
`
`8
`
`US ?,313,100 B1
`
`interface cards 34. Control unit 42 may apply filter-based
`forwarding (FBI?) to direct the returned traffic to the appro-
`priate output port of lFCs 34.
`FIG. 4 is a block diagram illustrating the flow of packets
`through the various components of a network monitor 50 in
`accordance with the principles of the invention.
`In the
`illustrated example, network monitor 50 monitors multiple
`communication links.
`in particular, network monitor 50
`collects transmit and receive packets for a first communi-
`cation link (labeled packet stream A in FIG. 1). and a second
`commtutication link (packet stream B). The first communi-
`cation link may, for example. comprise an OC—12 link, and
`the second contmnlnication link may comprise an (DC—48
`link.
`
`Initially. control unit 42 receives packets streams A. B via
`separate monitoring ports (not shown). As described above.
`optical splitters may be used to passively collect packet
`streams A. B from the respective communication links.
`Control unit 42 distributes packet stream A. B to accounting
`service cards 36 for generation of a stream of packets 50
`carrying flow records. More specifically, accounting service
`cards 36 coilect information from the packet flows within
`packet streams A. B and. based on the information. output
`packets 50 carrying flow records to control unit 42.
`If encryption is enabled. control unit 42 forwards packet
`stream 50 as packet stream 52 to carry the flow records to
`encryption card 38 for encryption. Encryption card 38
`encrypts each incoming packet 52, and returns a stream of
`encrypted packets 54 to control unit 42. Control unit 42
`forwards the encrypted packets carrying flow records 14 to
`accounting server It] via an output port of one or more of
`interface cards 34.
`
`Simultaneous with the above-described accotmting pro-
`cess, control tutit 42 mirrors and filters each ofthe incoming
`packets of incoming packet streams A. B to produce packet
`streams A'. B'. Control unit 42 may. for example. buffer
`incoming packets for packet streams A. B, and digitally copy
`each bufl'ered packet to internally mirror packets streams A.
`B. Control unit 42 applies a filtering operation to the
`mirrored packet streams to produce packet streams A‘, 13'
`having intercepted packets for seiect packet flours. Conse-
`quently. packet streams A'. B' carry copies ofa subset of the
`packets within incoming packet streams A. B. respectively.
`Control unit 42 forwards packet streams A'. B‘ to tunnel
`service card 40 for aggregation and ioopback to control unit
`42 as aggregated packet stream 56. Finally. control unit 42
`applies filter—based forwarding (FBF) to forward aggregated
`packet stream 56 to packet analyzer 12 as output packet
`stream 16. More specifically. control unit 42 directs aggre-
`gated packet stream 56 to an appropriate output interface
`card as packet stream 16 for forwarding to packet anaiyzer
`12. If encryption is enabled. control unit may forward
`aggregated packet stream 56 to encryption service card 38 as
`packet stream 58, and may receive encrypted packet stream
`62 in return for forwarding to packet analyzer 12 as packet
`stream 16.
`
`FIG. 5 is a block diagram illustrating an example embodi-
`ment ofan accounting service card 36 in accordance with the
`principles of the invention. Accounting service card 36
`receives inbound packet stream 66 via interface 7!}. Interface
`70 may. for example, comprise a high~speed communication
`bus, back plane. switch fabric. or the like, to allow account—
`ing service card 36 to easily be inserted and removed from
`an interface siot within the chassis of network monitor 33.
`
`5
`
`1
`
`3t]
`
`4t]
`
`50
`
`55
`
`60
`
`65
`
`interface 70 allows multiple accounting
`In this fashion.
`service cards 36 to be added to network monitor chassis 33
`
`to support monitoring of high data rate communication
`links.
`
`Interface 70 forwards packet stream 66 to accounting unit
`72 for updating flow statistics. Interface 70 may forward
`each packet in its entirely, or may extract only those portions
`of the packets necessary for maintaining accurate flow
`statistics. Interface 70 may.
`for example. extract header
`information and forward the extracted header infomiation to
`
`accounting unit 72. In this manner. bandwidth efliciencics
`may be achieved mtween interface 70 and accounting unit
`72. The extracted header information may include inform

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket