throbber
United States Patent l19J
`Cheung et al.
`
`[54] METHOD AND APPARATUS FOR
`PROVIDING A 3-WAY CONNECTION
`BETWEEN A MOBILE COMPUTING
`DEVICE, A STATIONARY COMPUTING
`DEVICE AND A COMPUTER NETWORK
`
`(75]
`
`Inventors: Roger Yiu Ming Cheung, Scarborough;
`Murray Charles Baker, Toronto;
`David Newton, Concord, all of Canada
`
`(73] Assignee: International Business Machines
`Corporation, Armonk, N.Y.
`
`(21] Appl. No.: 08/755,422
`
`[22]
`
`Filed:
`
`Nov. 22, 1996
`
`[30]
`
`.Foreign Application Priority Data
`
`Jun. 18, 1996
`
`(CA]
`
`Canada ................................... 2179349
`
`Int. Cl.6
`............................. G06F 13/38; G06F 15/17
`[51]
`[52] U.S. CI . .................................. 395/200.8; 395/200.57;
`395/200.66; 370/463
`[58] Field of Search ............................ 395/200.3, 200.57,
`395/200.66, 200.8; 370/401, 338, 402, 463
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`I 1111111111111111 11111 111111111111111 IIIII IIIII IIIII lllll 111111111111111111
`US005953507 A
`[11] Patent Number:
`(45] Date of Patent:
`
`5,953,507
`Sep.14,1999
`
`........................... 370/401
`5,473,608 12/1995 Gagne et al.
`5,550,816
`8/1996 Hardwick et al. ...................... 370/401
`5,572,528 11/1996 Shuen ...................................... 370/402
`2/1998 Doviak et al. .......................... 455/403
`5,717,737
`
`Primary Examiner-Mark H. Rinehart
`or Firm-Edward H. Duffield
`Attorney,
`
`[57]
`
`ABSTRACT
`
`A method and apparatus for providing a rnr,,e-,;v~v connec(cid:173)
`tion between a mobile computing device, a stationary com(cid:173)
`puting device and a computer network. When there i-; an
`established connection between a mobile computing device
`(e.g. a notebook computer) and the stationary computing
`device (e.g. desktop PC) over the wireless communication
`channel (e.g. infrared link), the system operates in BRIDGE
`mode. In BRIDGE mode the system redirects information
`packets in the OSI layer 2 (data link layer). When a notebook
`computer is not attached, the system operates in
`PASSTIIROUGH mode and all non-broadcast message traf(cid:173)
`fic from the Ethernet lAN is filtered by the Ethernet adapter
`based on the network address or group address of the
`desktop PC.
`
`5,159,592 10/1992 Perkins .................................... 370/401
`
`18 Claims, 4 Drawing Sheets
`
`TCP/IP
`PROTOCOL
`
`NETBIOS
`LAN
`REQUESTER
`PROTOCOL
`
`SNA
`3270
`PROTOCOL
`
`NETWARE
`PROTOCOL
`
`I
`
`I 100
`
`r
`
`110
`
`106-1
`
`! "1 06-2
`
`106-3
`
`I
`106-4 I
`
`NDIS2
`MSPFORETHERNET/DOS
`
`102
`
`104
`
`NDIS2
`ETHERNET DEVICE DRIVER
`
`NDIS2
`IRDA DEVICE DRIVER
`
`-
`
`-
`
`-
`
`-
`
`-
`
`- - - -
`
`-
`
`-
`
`- - - - -
`
`-
`
`-
`
`_I
`54
`
`52
`
`ETHERNET
`HARDWARE
`
`10
`
`50/
`
`IRDA 1.1
`HARDWARE
`
`•
`
`6
`
`Ex.1017
`APPLE INC. / Page 1 of 11
`
`

`

`U.S. Patent
`
`Sep.14,1999
`
`Sheet 1 of 4
`
`5,953,507
`
`TCP/IP
`PROTOCOL
`
`NETBIOS
`LAN
`REQUESTER
`PROTOCOL
`
`SNA
`3270
`PROTOCOL
`
`"
`
`106-1
`
`j~
`
`110
`"- ,,
`
`j~ "
`,,
`
`106-2
`
`' "
`
`"
`
`106-3
`
`I
`
`NETWARE
`PROTOCOL
`
`I 100
`i/
`
`. "
`
`106-4
`
`NDIS2
`MSP FOR ETHERNET/ DOS
`
`.
`
`/104
`
`•
`NDIS2
`IRDA DEVICE DRIVER
`
`'
`
`/102
`
`'
`NDIS2
`ETHERNET DEVICE DRIVER
`
`- - - - - - ~ - - - - - - - - - - - - J -
`/52
`'
`IRDA 1.1
`HARDWARE
`
`ETHERNET
`HARDWARE
`
`-
`
`-
`
`-
`
`-
`/ 54
`
`10~
`
`50/
`
`•
`.....__..
`.....___..
`~
`
`FIG.1
`
`Ex.1017
`APPLE INC. / Page 2 of 11
`
`

`

`U.S. Patent
`
`Sep.14,1999
`
`Sheet 2 of 4
`
`5,953,507
`
`,..,.18
`
`10 WIRED
`LAN
`
`HOST ACCESS
`
`HOST COMPUTER
`SYSTEM
`
`22
`
`PRINT
`SERVER
`
`FIG.2
`
`Ex.1017
`APPLE INC. / Page 3 of 11
`
`

`

`U.S. Patent
`
`Sep.14,1999
`
`Sheet 3 of 4
`
`5,953,507
`
`DPC
`,
`- - - - - - - - - - - - - - - - - - - - - - -·
`
`FIG.3
`
`:
`:
`
`1~ t=,
`16 ~ ·
`
`: '\.._v~ MPC:
`
`~ ~ \
`: 12 DPC
`
`18
`
`/
`
`~NTER
`
`HOST ACCESS
`
`HOST COMPUTER
`SYSTEM
`
`22
`
`PRINT
`SERVER
`
`FIG.4
`
`WIRED
`LAN
`
`Ex.1017
`APPLE INC. / Page 4 of 11
`
`

`

`U.S. Patent
`
`Sep.14,1999
`
`Sheet 4 of 4
`
`5,953,507
`
`: OFFICE
`
`' -, DPC
`
`,
`
`\
`
`\
`
`\
`
`\
`
`\
`
`,'
`- - ... - .. -, - - - - .. - .. - - .. - - - - - - _,
`'
`,
`- - - - - - - - - - - - - - - - - - - - - -'-
`: CONFERENCE ROOM
`
`HOST
`COMPUTER SYSTEM
`
`22
`
`FIG.5
`
`Ex.1017
`APPLE INC. / Page 5 of 11
`
`

`

`5,953,507
`
`1
`METHOD AND APPARATUS FOR
`PROVIDING A 3-WAY CONNECTION
`BETWEEN A MOBILE COMPUTING
`DEVICE, A STATIONARY COMPUTING
`DEVICE AND A COMPUTER NETWORK
`
`FIELD OF THE INVENTION
`
`The present invention relates to computer networking,
`and in particular to a method and apparatus for providing a
`three-way connection between a mobile computing device,
`a stationary computing device and a computer network.
`
`BACKGROUND OF THE INVENTION
`
`30
`
`2
`program (MSP) for coupling a mobile PC to a desktop PC
`and a wired computer network.
`According to one aspect of the invention, the three-way
`bridge comprises a program running on the desktop PC that
`5 appears as a LAN hardware adapter device driver to the
`Network Operating System (NOS) of the desktop PC. The
`desktop PC NOS assumes it is communicating with the LAN
`hardware adapter directly.
`The three-way bridge according to the present invention
`10 runs on top of both the device driver for the wireless
`interface adapter and the device driver for the LAN adapter.
`The three-way bridge appears as a NOS to both the wireless
`interface adapter and the LAN hardware adapter. When all
`the connections between the notebook PC, the desktop PC,
`15 and the LAN are active simultaneously, the three-way bridge
`according to the present invention puts both the wireless
`adapter and the LAN adapter into a promiscuous mode.
`During initialization, the three-way bridge will discover the
`node address of the LAN hardware adapter. This address is
`20 used by the NOS on the desktop PC. To discover the node
`address of the notebook PC NOS, the three-way bridge
`program examines the first data that is originated from the
`notebook PC. The program checks the source address and
`the OSI (Open System Interconnection Standard) layer 2
`25 data link layer to determine the node address of the NOS for
`the notebook PC.
`In operation, all traffic originating from the NOS of the
`notebook PC is received by the three-way bridge program.
`The three-way bridge program checks the destination
`address in the OSI layer 2 (i.e. the data link layer) to
`determine if the data is destined for the NOS of the desktop
`PC. If the data is destined for the desktop PC NOS, the data
`is delivered to the desktop PC NOS as though it came from
`the LAN. If the data is intended for both the desktop PC and
`the LAN, e.g. broadcast frames, the data is sent to the LAN
`in addition to the desktop PC. If the data is intended for the
`LAN, the data is sent on to the LAN.
`It is a feature of the three-way bridge program that all
`traffic on the LAN is examined. The three-way bridge
`program checks the destination address in the OSI layer 2,
`i.e. the data link layer, to determine if the data is destined for
`the desktop PC NOS or the notebook PC NOS, or both. If the
`data is not destined to the desktop PC NOS or the notebook
`PC NOS, the three-way bridge program takes no further
`action. If the data is destined to the desktop PC NOS or the
`notebook PC NOS, or both, the three-way bridge program,
`depending on the destination address, sends the data either
`to the desktop PC NOS or the notebook PC NOS, or both.
`The traffic originating from the desktop PC NOS is also
`examined by the three-way bridge program. The bridge
`program checks the destination address in the OSI layer 2
`data link layer to determine if the data is destined for the
`notebook PC NOS or NOS's on the LAN, or both. If the data
`55 is destined for the notebook PC NOS only, the bridge
`program sends the data to the notebook PC. On the other
`hand, if the data is destined for the NOS's on the LAN, the
`three-way bridge program sends the data on to the LAN. If
`the data is destined for both the notebook PC NOS and the
`60 NOS's on the LAN, the program sends the data to both the
`notebook PC as well as the NOS's on the LAN.
`In a further enhancement, the three-way bridge program
`according to the present invention will re-program the LAN
`adapter to take it out of promiscuous mode and put it back
`65 into normal mode with the original node address in order to
`obtain optimal performance when the notebook PC is not
`connected to the desktop PC. In normal mode, the LAN
`
`Local area networks (LAN's) have historically consisted
`of nodes interconnected by physical telecommunications
`media (e.g. coaxial cable, twisted pair wire or fibre optics).
`Recently wireless LAN's, the nodes of which are not
`connected by means of a physical medium, have started to
`appear in the art. These wireless LAN's communicate by
`means of an infrared (IR), radio or other signals. One of the
`benefits of using wireless LAN's is that cabling is not
`required. This is particularly useful for mobile nodes such as
`laptop and notebook computers, PDA's (Personal Digital
`Assistant), and the like. If appropriately equipped with a
`suitable wireless adapter (which includes a transmitter/
`receiver and control card), such as an IR wireless adapter,
`the mobile nodes can move around and remain connected to
`the network, provided they do not move out of range for the
`IR adapter.
`To accomplish a simultaneous three-way connection
`between a notebook PC, a desktop PC and a LAN, there are
`two possible approaches. The first approach involves using
`a router. The Network Operating System (NOS) of the
`desktop PC is provided with a built-in router program and 35
`connected to the Network Operating System (NOS) on the
`LAN. The NOS of the notebook PC is connected to the
`router within the desktop PC NOS. Data in the form of
`information packets from the NOS of the notebook PC
`destined for either the NOS of the desktop PC or the NOS's 40
`on the LAN is first received by the router program on the
`NOS of the desktop PC. Based on the destination informa(cid:173)
`tion contained in the data packet, the router will either send
`the data packet to the NOS of the desktop PC or to NOS's
`on the LAN.
`The second approach is that of the present invention and
`involves using a three-way bridge. The NOS of the desktop
`PC is directly connected to the three-way bridge program on
`the desktop PC. The NOS of the notebook PC is directly
`connected to the same three-way bridge program. The
`NOS's on the LAN are also directly connected to the same
`three-way bridge program.
`The main difference between the router and the three-way
`bridge is that the router redirects data in the OSI (Open
`System Interconnection Standard) layer 3, i.e. the network
`layer, and the three-way bridge redirects data in the OSI
`layer 2, i.e. the data link layer.
`The three-way bridge is preferred in a specific environ(cid:173)
`ment having only one notebook PC, one desktop PC, and a
`LAN. The three-way bridge is preferred over a router due to
`its simplicity in setting up the connections, operation by the
`end-use, and the ease of implementation.
`
`45
`
`50
`
`SUMMARY OF THE INVENTION
`
`The present invention provides a method and apparatus
`for providing a three-way bridge or mobile support means or
`
`Ex.1017
`APPLE INC. / Page 6 of 11
`
`

`

`5,953,507
`
`3
`adapter hardware will filter out all the data that is not
`directed to the node address. In this situation, the three-way
`bridge program does not need to spend CPU cycles to
`perform the filtering. The desktop PC with the three-way
`bridge program should perform as well as one without the 5
`three-way bridge program.
`In a first aspect, the present invention provides an appa(cid:173)
`ratus for providing a three-way connection between a com(cid:173)
`puter network, a stationary computing device, and a mobile
`computing device, said apparatus comprising: (a) network 10
`interface means for interfacing to said computer network;
`(b) a network operating system on said stationary computing
`device and including means for processing information
`packets for and from said computer network; (c) communi(cid:173)
`cation interface means for communicating between said 15
`stationary computing device and said mobile computing
`device and including control means for transmitting and
`receiving information packets between said stationary com(cid:173)
`puting device and said mobile computing device; ( d) routing
`means for routing information packets between said com- 20
`puter network, said stationary computing device, and said
`mobile computing device, said routing means including
`detector means for detecting connection of a mobile com(cid:173)
`puting device to said communication interface means, and
`having redirector means responsive to a connection to said 25
`mobile computing device for redirecting information pack-
`ets between said computer network, said stationary comput(cid:173)
`ing device and said mobile computing device.
`In a second aspect of the present invention, there is
`provided a method for providing a three-way connection for 30
`transferring information packets between a stationary com(cid:173)
`puting device, a mobile computing device, and a network,
`said stationary computing device being coupled to said
`network through a network adapter, and said mobile com(cid:173)
`puting device utilizing a wireless communication channel 35
`for transferring information packets to said stationary com(cid:173)
`puting device, said method comprising the steps of: (a)
`determining if said mobile computing device is coupled to
`said stationary computing device via said wireless commu(cid:173)
`nication channel; (b) redirecting information packets origi- 40
`nating from said mobile computing device and destined for
`said network through said stationary computing device when
`said wireless communication channel is active as determined
`in step (a); (c) redirecting information packets originating
`from said network and destined for said mobile computing 45
`device through said stationary computing device when said
`wireless communication channel is active as determined in
`step (a).
`In another aspect of the present invention, there is pro(cid:173)
`vided a computer program product for use in a computer
`system comprising a stationary computing device, a mobile
`computing device and a network, said stationary computing
`device being coupled to said network and having a network
`operating system, and said mobile computing device utiliz(cid:173)
`ing a wireless communication channel for transferring infor(cid:173)
`mation packets to said stationary computing device, said
`computer program product comprising: a recording
`medium; means recorded on said medium for instructing
`said stationary computing device to perform the steps of: (a)
`determining if said mobile computing device is coupled to
`said stationary computing device via said wireless commu(cid:173)
`nication channel; (b) redirecting information packets origi(cid:173)
`nating from said mobile computing device and destined for
`said network through said stationary computing device when
`said wireless communication channel is active as determined
`in step (a); (c) redirecting information packets originating
`from said network and destined for said mobile computing
`
`4
`device through said stationary computing device when said
`wireless communication channel is active as determined in
`step (a).
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`Reference will now be made to the accompanying draw(cid:173)
`ings which show, by way of example, a preferred embodi(cid:173)
`ment of the present invention, and in which:
`FIG. 1 shows in block diagram form a mobile support
`program according to the present invention;
`FIG. 2 shows in schematic form a configuration for
`providing a mobile PC with access to a wired computer
`network utilizing the mobile support program according to
`the present invention;
`FIG. 3 shows in schematic form another configuration for
`integrating a mobile PC with a desktop PC;
`FIG. 4 shows in schematic form another configuration for
`providing a desktop PC with access to a wired computer
`network utilizing the mobile support program; and
`FIG. 5 shows in schematic form another configuration for
`allowing a mobile PC to roam between desktop PC's uti(cid:173)
`lizing the mobile support program according to the present
`invention.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENT
`The present invention provides a method and means for
`connecting a mobile or portable personal computer, referred
`to as a mobile PC, to a stationary or desktop PC. The desktop
`PC is coupled to a wired computer network.
`In the drawings, the wired computer network is denoted
`by reference 10, the desktop PC is denoted by reference 12,
`referred to individually as 12-1 and 12-2 in FIG. 5, and the
`mobile PC is denoted by reference 14. The mobile PC is
`described as a notebook or laptop computer, but may com-
`prise other mobile computing devices, such as, a personal
`digital assistant (PDA), a personal communication assistant
`(PCA), an electronic organizer or a two-way interactive
`TV/set-top box remote control. In the described system, the
`wired computer network 10 comprises a Local Area Net-
`work or LAN and is referred to as a wired LAN. It is,
`however, to be understood that other types of wired com(cid:173)
`puter networks are possible, for example, including an ATM
`network or a cable TV network.
`Data transmission over the LAN 10 is performed accord(cid:173)
`ing to well defined and internationally accepted protocol
`standards. In the present description, the LAN 10 is
`described (but not limited) in relation to known communi-
`50 cation protocol according to the Ethernet standard as will be
`within the understanding of those skilled in the art. Other
`protocols, such as, token ring, are also applicable and within
`the understanding of those skilled in the art.
`As will be familiar to those skilled in the art, an Ethernet
`55 frame, i.e. information packet, according to the MAC-layer
`(Medium Access Control) protocol comprises 7 bytes
`preamble, 1 byte frame delimiter, 6 bytes of information
`representing the source address, that is, the address of the
`originating or transmitting node, for the information packet,
`60 6 bytes of information representing the destination address
`for the information packet, 2 bytes for packet length/type, 46
`to 1500 bytes of data, and 4 bytes FCS. The arrangement of
`the various bits of information within the MAC-layer header
`has been standardized and is well-known to those skilled in
`65 the art.
`As shown in FIG. 2, the mobile PC 14 is coupled to the
`desktop PC 12 through a wireless communication channel
`
`Ex.1017
`APPLE INC. / Page 7 of 11
`
`

`

`5,953,507
`
`6
`5
`Reference is made to FIG. 1 which shows in block
`16. In the described system, the wireless communication
`channel 16 comprises an infrared communication channel,
`diagram form an implementation for the method and means
`although it is understood that other types of wireless com(cid:173)
`according to the present invention. The method and means
`munication links are possible. The implementation of the
`are embodied in computer software denoted generally by
`infrared channel 16 is within the understanding of those 5
`100 and computer hardware 50 which runs on the desktop
`skilled in the art using, for example, conventional IrDA
`PC 12. The software 100 runs the hardware 50 which
`chipsets, such as the IBM1502 IR controller chip from IBM
`couples the desktop PC 12 to the Ethernet LAN 10 and the
`Corp., or the NSC108IR controller chip from National
`wireless communication channel 16. The computer software
`Semiconductor Corp.
`100 comprises the workstation software for the Network
`In the description that follows, the following definitions 10
`Operating System or NOS.
`are used. Local area network (LAN) is a network that is
`The hardware 50 comprises a network adapter 52 and a
`usually confined to a small geographical area, e.g. within a
`wireless adapter 54. For an Ethernet based configuration, the
`building. IR WLAN is a wireless LAN, i.e. WLAN, that uses
`network adapter 52 comprises suitable Ethernet hardware
`infrared light as the communication medium. Mobile per(cid:173)
`which is coupled to the Ethernet LAN 10. For an infrared
`sonal computer (MPC) means any mobile device that has a
`IrDA 1.1 compatible infrared device. Desktop personal 15
`communication channel 16, the wireless adapter 54 com(cid:173)
`prises IrDA 1.1 hardware as will be familiar to one skilled
`computer (DPC) means any desktop device that has an IrDA
`in the art. The mobile PC 14 has a corresponding IrDA
`1.1 compatible infrared device. Access point (AP) means a
`device that connects a mobile PC to a wired LAN using a
`controller and device driver (not shown) for implementing
`wireless infrared connection between the access point and
`the communication channel 16.
`the mobile PC. Bridge means a bridge that operates at the 20
`As shown in FIG. 1, the workstation software 100
`OSI data link layer (i.e. layer 2) and copies frames from one
`includes an Ethernet device driver 102 and an IrDA device
`network to the other. The bridge often contains logic to copy
`driver 104. The Ethernet device driver 102 interfaces the
`only a subset of the frames it receives. This logic is known
`workstation software 100 to the Ethernet adapter 52 and the
`as filtering. A bridge is usually measured by its filtering rate
`IrDAdevice driver 104 interfaces the workstation 100 to the
`and forwarding rate.
`25 IrDA 1.1 adapter 54. In known manner, the Ethernet device
`The wired LAN 10 includes connections or nodes for
`driver 102 provides the workstation software 100 with the
`other terminals comprising a file server 18, a print server 20,
`capability to work with the specific Ethernet adapter 52 and
`and a host computer system 22. The file server 18, print
`perform data transmission on the LAN 10. Similarly, the
`server 20 and host computer 22 provide resources which can
`IrDA device driver 104 allows the workstation software to
`be shared between the mobile PC 14, the desktop PC 12 and 30
`transmit and receive information packets over the wireless
`other stations (e.g. mobile or desktop PC's) connected to the
`communication channel 16 through the IrDA adapter 54. In
`LAN 10. The file server 18 includes mass storage devices
`the described embodiment, each adapter 52, 54 comprises a
`(not shown) for providing file archival and retrieval. As
`NDIS type driver as will be understood by those skilled in
`shown in FIG. 2 (and FIG. 4), the print server 20 includes
`the art.
`a printer 24 for providing a printing resource for the network 35
`Referring to FIG. 1, the workstation software 100 pref(cid:173)
`10.
`erably includes upper layer protocol stacks 106 which
`The method and means according to the present invention
`support communication protocols for known Network Oper(cid:173)
`allows a mobile PC 14 to connect to an Ethernet wired LAN
`ating Systems (NOS). There is provided an upper layer
`10 via an existing desktop PC 12, thereby eliminating the
`protocol stack 106-1 for TCP/IP (Transmission Control
`need to purchase an additional access point (AP) or station
`Protocol/Internet Protocol) 106, an upper layer protocol
`box (not shown) for the mobile PC 14. In this mode, the
`stack 106-2 for NETBIOS LAN Requester, an upper layer
`mobile PC 14 is provided with access to the resources, e.g.
`protocol stack 106-3 for SNA 3270, and an upper layer
`file server 18 or the printer 24 on the network 10. The user
`protocol stack 106-4 for NETWARE™ 112. The upper layer
`of the mobile PC 14 may require access to the Ethernet
`protocol stacks 106 comprise software which will be well
`wired LAN 10 for the host computer 22, the file server 18,
`understood by one skilled in the art.
`the printer 24, etc. According to the present invention, the
`user can accomplish the connection via the desktop PC 12
`According to the invention, workstation software 100
`using the wireless infra-red communication link 16 between
`includes another device driver 110. As shown in FIG. 1, the
`the mobile PC 14 and the desktop PC 12.
`device driver 110 binds itself to the upper layer protocol
`50 stack 106. The device driver 110 also binds itself to the
`In another aspect, the present method allows the mobile
`Ethernet device driver 102 and the IrDA device driver 104.
`PC 14 to connect to the desktop PC 12 to provide the mobile
`PC 14 with access to the resources of the desktop PC 12, for
`The device driver 110 is implemented to mimic the
`example, a printer 26 as shown in FIG. 3 or a mass storage
`behaviour of a NDIS2 device driver in the described
`device. This feature is particularly useful to provide a
`embodiment. According to the invention, the device driver
`connection between the mobile PC 14 and the desktop PC 12 55
`110 takes on two personas. First, the device driver 110
`in order to synchronize files and/or databases.
`appears to the upper layer protocol stack 106, e.g. TCP/IP
`106-1, as an Ethernet NDIS2 device driver. On the other
`In another aspect, the method according to the present
`hand, for Ethernet device driver 102 and the IrDA device
`invention allows the desktop PC 12 to remain connected to
`driver 104, the device driver 110 appears as an upper layer
`the wired LAN 10 while the mobile PC 14 accesses the
`protocol stack 106.
`network 10 through the desktop PC 12. This aspect is 60
`depicted in FIG. 2.
`The device driver 110 according to the present invention
`operates in two modes: BRIDGE mode and
`In another aspect, the method according to the present
`invention allows the mobile PC 14 to roam between desktop
`PASSTHROUGH mode. The mode of operation depends on
`PC's 12-1 and 12-2 located on the same Ethernet LAN
`whether the mobile PC 14 has established a wireless infrared
`segment as illustrated in FIG. 5. This mode of operation and 65 connection with the desktop PC 12. The device driver 110
`the others shown in FIGS. 2 to 4 are described in more detail
`determines if a connection has been established by querying
`below.
`the MAC (Medium Access Control) statistics for the IrDA
`
`45
`
`40
`
`Ex.1017
`APPLE INC. / Page 8 of 11
`
`

`

`5,953,507
`
`7
`device driver 104. A specific field in the MAC statistics for
`the IrDA driver 104 serves to indicate whether an IrDA
`connection over the channel 16 exists.
`If there is an established connection over the wireless, i.e.
`infrared, communication channel 16 between the mobile PC
`14 and the desktop PC 12, the device driver 110 operates in
`BRIDGE mode. In BRIDGE mode, the device driver 110
`functions as an Ethernet transparent MAC-bridge that con(cid:173)
`nects the mobile PC 14 to the Ethernet wired LAN 10 via the
`desktop PC 12. The device driver 110 also acts as an 10
`Ethernet transparent MAC-bridge that connects the desktop
`PC 12 to the Ethernet wired LAN 10.
`In the BRIDGE mode of operation, the device driver 110
`puts both the Ethernet adapter 52 and the IrDA adapter 54
`into "promiscuous" mode. In promiscuous mode, the adapt(cid:173)
`ers 52, 54 receive all information packets regardless of the
`destination address. In BRIDGE mode, the device driver 110
`resends on the Ethernet LAN 10 any IR message received
`from the mobile PC 14 which is destined for a wired node,
`e.g. to the file server 18. On the other hand, an IR informa(cid:173)
`tion packet received from the mobile PC 14 and intended for
`the desktop PC 12 is forwarded by the device driver 110 to
`the upper layer protocol stack 106 that is bound to the device
`driver 110.
`Information packets originating from the desktop PC 12
`are handled as follows by the device driver 110 in BRIDGE
`mode. The device driver 110 sends any information packets
`destined for a wired node, e.g. print server 20, on the LAN
`10 and the packets are sent on the LAN 10 by the device
`driver 110 via the Ethernet device driver 102. Any informa(cid:173)
`tion packet from the desktop PC 12 destined for the mobile
`PC 14 is sent by the device driver 110 on the wireless
`communication channel 16 via the IrDA device driver 104.
`Information packets originating from the Ethernet LAN
`10 are routed by the device driver 110 as follows in BRIDGE
`mode. Any information packet received from the Ethernet
`LAN 10 and destined for the desktop PC 12 is forwarded by
`the device driver 110 to the upper layer protocol stack 106
`that is binded to the device driver 110 (provided such a stack
`exists). An information packet received from the LAN 10
`and destined to the mobile PC 14 is resent by the device
`driver 110 on the wireless communication channel 16 via the
`IrDA adapter 54.
`It will be appreciated that the device driver according to
`the present invention is not a standard-compliant ethernet
`MAC-bridge implementation. Rather, the primary function
`of the device driver 110 according to the present invention
`is to create a three-way connection between the Ethernet
`LAN 10, the desktop PC 12, and the mobile PC 14.
`The device driver 110 operates in PASSTHROUGH mode 50
`when there is no mobile PC 14 connected to the desktop PC
`12. In the PASSTHROUGH mode of operation, the device
`driver 110 puts the Ethernet adapter 52 back into NORMAL
`mode, i.e. to the preset universal or assigned network
`address and group address. The device driver 110 however
`keeps the IrDA adapter 54 in promiscuous mode.
`In PASSTHROUGH mode, the Ethernet adapter 52 filters
`out all non-broadcast message traffic from the Ethernet LAN
`10 that is not destined for its network address or group
`address. The device driver 110 passes all data packets 60
`received from the Ethernet adapter 52 to the upper layer
`protocol stack 116. In PASSTHROUGH mode, the device
`driver 110 does not examine or act on the data except for the
`following commands from the upper layer protocol stack:
`(1) Open_Adapter; (2) Close_Adapter; (3) Set_Station_ 65
`Address; ( 4) Add_Multicast_Address; (5) Delete
`Multicast_Address.
`
`8
`The device driver 110 is configured not to pass the
`Open_Adapter command to the Ethernet hardware adapter
`52. Instead, the device driver 110 returns an "Okay" indi(cid:173)
`cation to the upper layer protocol stack 106. Similarly, the
`5 device driver 110 does not pass the Close_Adapter com(cid:173)
`mand to the Ethernet adapter 54. Instead, the device driver
`110 returns an Okay indication to the upper layer protocol
`stack 106.
`The device driver 110 processes the Set_Station_
`Address command according to its mode of operation. In
`BRIDGE mode, the device driver 110 does not pass the
`Set_Station_Address command to the Ethernet adapter 52.
`Instead, the device driver 110 stores the station_address in
`memory and returns an Okay indication to the upper proto-
`15 col stack 106. When the device driver 110 switches to
`PASSTHROUGH mode, it sets the Ethernet adapter 52
`based on the station_address. In PASSTHROUGH mode,
`the device driver 110 passes the Set_Station_Address com(cid:173)
`mand to the Ethernet adapter 52. The device driver 110 also
`20 stores the station_address in memory. If the indication from
`the Ethernet adapter 52 is not okay, the device driver 110
`deletes the station_address from its memory.
`The device driver 110 processes the Add_Multicast_
`Address command differently depending on its mode of
`25 operation. In BRIDGE mode, the device driver 110 does not
`pass the Add_Multicast_Address command to the Ethernet
`adapter 52. Instead, the device driver 110 stores the
`multicast_address in memory and returns an Okay indica(cid:173)
`tion to the Ethernet adapter 52. When the device driver 110
`30 switches to PASSTHROUGH mode, the device driver 110
`sets the Ethernet adapter 52 based on the multicast_address.
`In PASSTHROUGH mode, the device driver 110 passes the
`Add_Multicast_Address command to the Ethernet adapter
`52. The device driver 110 also stores the multicast_address
`35 in memory. If the indication received from the Ethernet
`adapter 52 is not ok, the device driver 110 deletes the
`multicast_address from memory.
`Processing of the Delete_Multicast_Address also
`depends on the mode of operation for the device driver 110.
`In BRIDGE mode, the device driver 110 does not pass the
`Delete_Multicast_Address command to the Ethernet
`adapter 52. Instead, the device driver 110 deletes the
`multicast_address in memory and returns an Okay indica-
`45 tion to the Ethernet adapter 52. In PASSTHROUGH mode,
`the device driver 110 passes the Delete_Multicast_Address
`command to the Ethernet adapter 52. If the indication from
`the Ethernet adapter 52 is okay, the device driver 110 deletes
`the multicast_address from its memory.
`In another aspect, the device driver 110 provides roaming
`support. When the device driver 110 receives the first
`message from a mobi

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