Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
COMMUNICATION OVER A NETWORK
Document Type and Number:
WIPO Patent Application WO/2018/137838
Kind Code:
A1
Abstract:
An electronic device for use as a node (101, 101A, 101B, 101C, 101D) in an Ethernet network (701) of a vehicle (702), a method (1300) of communicating over an Ethernet network, an Ethernet network (701), a vehicle (702) and a computer program (106) are disclosed. The electronic device has a transceiver means (102) configured to transmit and receive signals (300) comprising an idle stream (302) between packets (301) of data. The electronic device is configured to store a node identifier (308) for each one of a plurality of other nodes on a network connected to the electronic device and transmit a signal (300) comprising a wake-up pattern (307) within an idle stream (302). The wake-up pattern comprises one of the node identifiers (308).

Inventors:
LARIOS EFSTATHIOS (GB)
MARTIN SHAUN (GB)
JONES ANDREW (GB)
Application Number:
PCT/EP2017/082502
Publication Date:
August 02, 2018
Filing Date:
December 13, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
JAGUAR LAND ROVER LTD (GB)
International Classes:
H04L12/12; H04L12/28; H04L12/40
Domestic Patent References:
WO2007024306A12007-03-01
Foreign References:
US20040246961A12004-12-09
US20100111081A12010-05-06
Attorney, Agent or Firm:
CHANG, Seon-Hee (GB)
Download PDF:
Claims:
CLAIMS

1 . An electronic device for use as a node in a communication network of a vehicle, the electronic device having a transceiver means configured to transmit and receive signals comprising an idle stream between packets of data;

wherein the electronic device is configured to:

store a node identifier for each one of a plurality of other nodes on a network connected to the electronic device; and

transmit a signal including a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers.

2. A communication network according to claim 1 wherein the communication network is an Ethernet network. 3. An electronic device according to claim 1 or 2, wherein the electronic device is configured to:

receive via at least one network port a plurality of node addresses identifying each one of the other nodes on the network;

derive from each of the node addresses a corresponding node identifier; and store each node address and the corresponding node identifier.

4. An electronic device according to claim 3, wherein each of the node identifiers comprises fewer bits than a respective node address. 5. An electronic device according to claim 3 or claim 4, wherein the node addresses comprise MAC addresses (Media Access Control addresses).

6. An electronic device according to any one of claims 1 to 5, wherein the electronic device is an electronic control unit within a vehicle.

7. An electronic device according to claim 6, wherein the transceiver means comprises a first port configured to provided communication over a first bus and the electronic control unit has a further port configured to be connected to a second bus.

8. An electronic device according to claim 7, wherein the second bus is a CAN (controller area network) bus, a FlexRay (RTM) bus, a LIN bus (Local Interconnect Network bus) or another Ethernet bus. 9. An electronic device according to any one of claim 1 to 8, wherein the electronic device comprises a network switch and the transceiver means comprises a plurality of ports, and wherein the transceiver means is configured to:

store in a memory the node identifier for each of the other nodes on the network along with a respective port identifier identifying a respective one of the ports;

receive via one of the ports a signal comprising an idle stream including a node identifier;

retrieve from the memory the port identifier corresponding to the received node identifier; and

transmit a signal comprising an idle stream including the received node identifier via the port having the retrieved port identifier.

10. An electronic device according to any one of claims 1 to 8, wherein the electronic device comprises a network switch and the transceiver means has a plurality of ports, and wherein the network switch is configured to:

receive via the ports of the transceiver means a plurality of node addresses identifying each of the other nodes on a network; and

in respect of each of the node addresses, store a node identifier identifying a respective one of the other nodes and a respective port identifier identifying the port via which the node address is received.

1 1 . An electronic device according to claim 10, wherein the electronic device is configured to derive each of the node identifiers from the respective node address.

12. An electronic device according to claim 1 1 , wherein the electronic device is configured to derive each node identifier by performing a hash function or fingerprint algorithm in respect of the corresponding node address.

13. An electronic device according to claim 10, wherein the electronic device is configured to derive the node identifiers by placing the node addresses in an order according to a rule. 14. An electronic device according to any one of claims 9 to 13, wherein the transceiver means is configured to forward the received signal without a node address being obtained from one of the packets of data.

15. An electronic device according to any one of claims 9 to 14, wherein the network switch comprises a main controller means configured to perform switching operations, the network switch being configured to place the main controller means into a low quiescent current state when packets of data are not being sent or received, and the transceiver means is configured to forward the received signal while the main controller means remains in the low quiescent current state.

16. An electronic device according to any one of claims 9 to 15, wherein the transceiver means is configured to:

receive a signal comprising a packet following the node identifier; and

without a node address being obtained from the packet, forward the signal via the port having the retrieved port identifier.

17. An electronic device according to any one of claims 1 to 16, wherein the electronic device comprises a main controller means configured to enter a low quiescent current state when processing is not required, and the transceiver means is configured to read a wake-up pattern, which comprises a node identifier, within an idle stream of a received signal and wake the main controller means from the low quiescent current state.

18. An electronic device according to any one of claims 1 to 17, wherein the transceiver means comprises at least one transceiver having at least one port configured to be connected to a data bus.

19. An electronic device according to any one of claims 15 to 17, wherein the main controller means comprises a processor.

20. An electronic device according to any one of claims 1 to 19, wherein, the wake-up pattern comprises a node identifier only.

21 . A communication network within a vehicle, the communication network comprising a plurality of nodes, each node comprising an electronic device in accordance with any one of claims 1 to 20.

22. A communication network as claimed in 21 wherein the communication network is an Ethernet network.

23. A vehicle having a communication network comprising a plurality of nodes, each node comprising an electronic device in accordance with any one of claims 1 to 20.

24. A method of communicating over a communication network in which signals are transmitted comprising a packet of data having a predetermined format and an idle stream between the packets, wherein the method comprises:

storing a node identifier for each one of a plurality of other nodes on a network; and transmitting a signal comprising a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers.

25. A method as claimed in 24 wherein the communication network is an Ethernet network.

26. A method according to claim 24 or 25, wherein the method comprises:

receiving via at least one network port a plurality of node addresses identifying each one of the other nodes;

deriving from each of the node addresses a corresponding node identifier; and storing each node address and the corresponding node identifier.

27. A method according to claim 24 to 26, wherein the method comprises:

storing (the node identifier for each of the other nodes with a respective port identifier identifying a respective port of a network switch;

receiving via one of the ports of the network switch a signal comprising an idle stream including a node identifier; retrieving from a memory the port identifier corresponding to the received node identifier; and

transmitting an idle stream including the node identifier via the port having the retrieved port identifier.

28. A method according claim 27, wherein the method comprises:

receiving via the ports of the network switch a plurality of node addresses identifying each of the other nodes;

deriving from the node addresses, a plurality of node identifiers, each of the node identifiers identifying a respective one of the nodes; and

in respect of each of the node addresses, storing a node identifier and a respective port identifier identifying the port via which the node address is received.

29. A method according to claim 28, wherein the node identifiers are derived from the respective node addresses.

30. A method according to any one of claims 27 to 29, wherein the method comprises: receiving a first signal comprising a packet following the node identifier; and forwarding (the first signal via the port having the retrieved port identifier, without a node address being obtained from the packet.

31 . A method according to claim 30, wherein the node identifiers are derived by placing the node addresses in an order according to a rule. 32. A computer program that when run on a processor causes a node of a network to store a node identifier for each one of a plurality of other nodes on the network, and transmit a signal comprising a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers. 33. An electronic device for use as a node in a communication network of a vehicle, the electronic device having a processor, memory device connected to the processor and a transceiver configured to transmit and receive signals comprising an idle stream between packets of data, wherein the processor is configured to provide a node identifier for each one of a plurality of other nodes on a network connected to the electronic device, the node identifiers being provided for storing in the memory; and

the transceiver is configured to transmit a signal comprising a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers.

34. An electronic device as claimed in 33 wherein the communication network is an Ethernet network.

Description:
COMMUNICATION OVER A NETWORK

TECHNICAL FIELD

The present disclosure relates to communication over a network. In particular, but not exclusively it relates to communication over an Ethernet network in a vehicle. Aspects of the invention relate to an electronic device for use as a node in a communication network of a vehicle, a method of communicating over a communication network, a communication network, a vehicle and a computer program.

BACKGROUND

In a typical communication network switched environment, it is possible to wake up devices connected to the network by use of a packet referred to as a "magic packet". The magic packet contains a MAC address of the destination device and devices may be configured to listen to incoming packets in a low-power mode while the system is powered down. If a magic packet is received that is directed to a device's MAC address, a system wake up is initiated. However, the low-power mode required for magic packet monitoring uses too much power for vehicle requirements, where electronic control units are required to be in a low quiescent current state (a deep sleep mode) when not in use. It is an aim of the present invention to provide a method of selectively waking up devices connected to an Ethernet network using less energy than is required for present methods.

SUMMARY OF THE INVENTION Aspects and embodiments of the invention provide an electronic device for use as a node in a communication network of a vehicle, a method of communicating over a communication network, a communication network, a vehicle and a computer program as claimed in the appended claims. According to an aspect of the invention there is provided an electronic device for use as a node in an communication network of a vehicle, the electronic device having a transceiver means configured to transmit and receive signals comprising an idle stream between packets of data; wherein the electronic device is configured to: store a node identifier for each one of a plurality of other nodes on a network connected to the electronic device; and transmit a signal including a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers.

In an embodiment the communication network is an Ethernet network

This provides the advantage that a transceiver of a network switch receiving the signal is able to forward the signal without requiring operation by the main controller of the switch. Consequently, a switch in a deep sleep mode may remain in the deep sleep mode while the received signal is received and forwarded, and the energy that would otherwise be used in waking the main controller from the deep sleep mode is saved.

In some embodiments the electronic device is configured to: receive via at least one network port a plurality of node addresses identifying each one of the other nodes on the network; derive from each of the node addresses a corresponding node identifier; and store each node address and the corresponding node identifier. Advantageously, this provides a method in which the nodes of a network may simply derive the required node identifiers. It also enables new node identifiers to be generated if the network is altered, for example by replacement of a node.

Each of the node identifiers may comprise fewer bits than a respective node address. Advantageously, this allows the node identifier to be short enough to be used within an idle stream with a duration that is shorter than that which would be required to transmit the node address. The node addresses may comprise MAC addresses (media access control addresses).

In some embodiments the electronic device is an electronic control unit within a vehicle. The transceiver means may comprise a first bus and the electronic control unit may have a further port connected to a second bus. The second bus may be a CAN (controller area network) bus, a FlexRay (RTM) bus, a LIN bus (Local Interconnect Network bus), Ethernet bus or other form of data bus. In some embodiments the electronic device comprises a network switch and the transceiver means comprises a plurality of ports, and wherein the transceiver means is configured to: store in a memory the node identifier for each of the other nodes on the network along with a respective port identifier identifying a respective one of the ports; receive via one of the ports a signal comprising an idle stream including a node identifier; retrieve from the memory the port identifier corresponding to the received node identifier; and transmit a signal comprising an idle stream including the received node identifier via the port having the retrieved port identifier.

This provides the advantage that the signal is able to be forwarded without requiring operation by a main controller of the switch.

In some embodiments the electronic device comprises a network switch and the transceiver means has a plurality of ports, and wherein the network switch is configured to: receive via the ports of the transceiver means a plurality of node addresses identifying each of the other nodes on a network; and in respect of each of the node addresses, store a node identifier identifying a respective one of the other nodes and a respective port identifier identifying the port via which the node address is received.

Advantageously, this allows the network switch to simply derive the required node identifiers and store them along with corresponding ports after the network has been established. It also enables new node identifiers to be generated and stored along with respective port identifiers if the network is altered, for example by replacement of a node.

The electronic device may be configured to derive the node identifiers from the respective node addresses. The electronic device may be configured to derive each node identifier by performing a hash function or fingerprint algorithm in respect of the corresponding node address, or the electronic device may be configured to derive the node identifiers by placing the node addresses in an order according to a rule. Advantageously, by using a function, algorithm or rule a node identifier may be generated that is the same as that generated in other nodes using the same function, algorithm or rule.

The transceiver means may be configured to forward the received signal without a node address being obtained from one of the packets of data. This may provide the advantage of reducing processing that would be required if it were necessary to analyze the content of the packet.

The electronic device may be a network switch that comprises a main controller means configured to perform switching operations, the network switch being configured to place the main controller means into a low quiescent current state when packets of data are not being sent or received, and the transceiver means is configured to forward the received signal while the main controller means remains in the low quiescent current state. The transceiver means may be configured to: receive a signal comprising a packet following the node identifier; and without a node address being obtained from the packet, forward the signal via the port having the retrieved port identifier.

In some embodiments the electronic device comprises a main controller means configured to enter a low quiescent current state when processing is not required, and the transceiver means is configured to read a wake-up pattern, which comprises a node identifier, within an idle stream of a received signal and wake the main controller means from the low quiescent current state. In some embodiments the transceiver means comprises a transceiver having at least one port for connection to a network.

The main controller means may comprise an electronic processor. In some embodiments, the wake-up pattern comprises a node identifier only.

According to another aspect of the invention there is provided a communication network within a vehicle, the communication network comprising a plurality of electronic devices in accordance with the preceding paragraphs. In an embodiment the communication network is an Ethernet Network.

According to another aspect of the invention there is provided a vehicle having a communication network in accordance with the preceding paragraph.

According to another aspect of the invention there is provided a method of communicating over a communication network in which signals are transmitted comprising a packet of data having a predetermined format and an idle stream between the packets, wherein the method comprises: storing a node identifier for each one of a plurality of other nodes on a network; and transmitting a signal including a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers. In some embodiments the communication network is an Ethernet network. This provides the advantage that a transceiver of a network switch receiving the signal is able to forward the signal without requiring operation by the main controller of the switch. Consequently, a switch in a deep sleep mode may remain in the deep sleep mode while the received signal is received and forwarded, and the energy that would otherwise be used in waking the main controller from the deep sleep mode is saved.

In some embodiments the method comprises: receiving via at least one network port a plurality of node addresses identifying each one of the other nodes; deriving from each of the node addresses a corresponding node identifier; and storing each node address and the corresponding node identifier.

In some embodiments the method comprises: storing the node identifier for each of the other nodes with a respective port identifier identifying a respective port of a network switch; receiving via one of the ports of the network switch a signal comprising an idle stream including a node identifier retrieving from a memory the port identifier corresponding to the received node identifier; and transmitting an idle stream including the node identifier via the port having the retrieved port identifier.

In some embodiments the method comprises: receiving via the ports of the network switch a plurality of node addresses identifying each of the other nodes; deriving, from the node addresses, a plurality of node identifiers, each of the node identifiers identifying a respective one of the nodes; and in respect of each of the node addresses, storing a node identifier and a respective port identifier identifying the port via which the node address is received. The node identifiers may be derived from the respective node addresses.

In some embodiments the method comprises: receiving a received signal comprising a packet following the node identifier; and forwarding the received signal via the port having the retrieved port identifier, without a node address being obtained from the packet.

The node identifiers may be derived by placing the node addresses in an order according to a rule.

According to another aspect of the invention there is provided a computer program that when run on a processor causes a node of a network to store a node identifier for each one of a plurality of other nodes on the network, and transmit a signal including a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers.

According to another aspect of the invention there is provided an electronic device for use as a node in an communication network of a vehicle, the electronic device having a processor, memory device connected to the processor and a transceiver configured to transmit and receive signals comprising an idle stream between packets of data, wherein the processor is configured to provide a node identifier for each one of a plurality of other nodes on a network connected to the electronic device, the node identifiers being provided for storing in the memory; and the transceiver is configured to transmit a signal including a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers.. In some embodiments the communication network is an Ethernet network.

According to another aspect of the invention there is provided an electronic device for use as a node in a network of a vehicle, the electronic device having a communication means configured to transmit and/or receive signals comprising an idle stream between packets of data and wherein the idle stream contains a node identifier. This provides the advantage that a transceiver of a network switch receiving the signal is able to determine from the presence of a node identifier in the idle stream that the main controller of the switch is not required, and, instead, the transceiver may simply identify the port on which the signal is to be forwarded by retrieving a stored port identifier corresponding to the node identifier.

According to another aspect of the invention there is provided an electronic device for use as a node in an Ethernet network of a vehicle, the electronic device having a processor, memory device connected to the processor and a transceiver configured to transmit and receive signals comprising an idle stream between packets of data, wherein a node identifier for each one of a plurality of other nodes on a network connected to the electronic device is stored within the memory device; and the transceiver is configured to transmit a signal including a wake-up pattern within an idle stream, the wake-up pattern comprising one of the node identifiers.

According to another aspect of the invention there is provided a network switch for use in an Ethernet network of a vehicle, the electronic device having a processor, memory device connected to the processor and a transceiver comprising a plurality of ports, the transceiver being configured to transmit and receive signals comprising an idle stream between packets of data, wherein the transceiver is further configured to: receive via one of the ports a signal comprising an idle stream including a node identifier; retrieve from the memory device a port identifier corresponding to the received node identifier; and transmit a signal comprising an idle stream including the received node identifier via the port identified by the retrieved port identifier.

Within the scope of this application it is expressly intended that the various aspects, embodiments, examples and alternatives set out in the preceding paragraphs, in the claims and/or in the following description and drawings, and in particular the individual features thereof, may be taken independently or in any combination. That is, all embodiments and/or features of any embodiment can be combined in any way and/or combination, unless such features are incompatible. The applicant reserves the right to change any originally filed claim or file any new claim accordingly, including the right to amend any originally filed claim to depend from and/or incorporate any feature of any other claim although not originally claimed in that manner. BRIEF DESCRIPTION OF THE DRAWINGS

One or more embodiments of the invention will now be described, by way of example only, with reference to the accompanying drawings, in which:

Fig. 1 shows schematically an electronic device 101 for use as a node in an Ethernet network of a vehicle;

Fig. 2 shows an electronic control unit (ECU) 101 A;

Fig. 3 shows a signal 300 comprising Ethernet packets 301 separated by an interpacket gap 302 including an idle stream 302 containing a wake-up pattern 307 comprising a node identifier 308;

Fig. 4 shows a network switch 101 B;

Fig. 5 shows an example of a MAC address look-up table 501 ;

Fig. 6 shows an example of a look-up table 407 for access by the transceiver of the network switch 101 B;

Fig. 7 shows an example network 701 ;

Fig. 8 shows a method 800 which may be performed by the switch 101 B to produce the lookup table 407;

Fig. 9 shows a flow chart of a method 900 performable by the switch 101 B and other nodes of a network;

Fig. 10 shows an example of a look-up table 107A stored by the electronic control unit 101 A; Fig. 1 1 shows an example of a look-up table 1 101 for access by the transceiver of the network switch 101 C of Fig. 7;

Fig. 12 shows an example of a look-up table 1201 for access by the transceiver of the network switch 101 C of Fig. 7;

Fig. 13 shows a flow chart of a method 1300 performable by a node 101 ;

Fig. 14 shows a method 1400 of forwarding a signal 300 comprising a wake-up pattern 307, which comprises a node identifier 308, within an idle stream 302;

Fig. 15 shows processes 1500 that may be performed by the switches 101 B, 101 C and 101 D; and

Fig. 16 shows processes 1600 that may be performed by the ECUs such as electronic control unit 101 A. DETAILED DESCRIPTION

The Figures illustrate an electronic device 101 , 101 A, 101 b, 101 C, 101 D for use as a node in a communication network 701 of a vehicle 702, the electronic device having a transceiver means 102 configured to transmit and receive signals 300 comprising an idle stream 302 between packets 301 of data; wherein the electronic device is configured to: store a node identifier 308 for each one of a plurality of other nodes on a network connected to the electronic device; and transmit a signal 300 including a wake-up pattern 307 within an idle stream 302, the wake-up pattern comprising one of the node identifiers 308. In embodiments of the invention, the communication network is an Ethernet Network,

In embodiments of the invention, the transceiver means 102 comprises a transceiver 102 having at least one port for connection to a network. An electronic device 101 for use as a node in an Ethernet network of a vehicle is shown schematically in Fig. 1 . The electronic device 101 has a transceiver means 102 comprising at least one transceiver 102 having at least one port 103 configured to transmit and receive signals comprising an idle stream between packets of data. As will be described in further detail below, the electronic device is configured to perform the method 1300 shown in the flow chart of Fig. 13. That is, at block 1301 , the electronic device 101 is configured to store a node identifier for each one of a plurality of other nodes on a network connected to the electronic device and, at block 1302, transmit a signal including a wake-up pattern, which comprises one of the node identifiers, within an idle stream. The electronic device 101 has at least one transceiver 102 having at least one port 103, and at least one transceiver 102 of the electronic device 101 may be configured to transmit and receive signals on an Ethernet bus via at least one of its ports 103.

The electronic device also comprises a control means 104 and a memory means 105. The memory means may comprise one or more memory devices for storing program instructions 106 and data including one or more look-up tables 107. The program instructions may be provided to the memory means by a non-transitory storage medium 108 which contains the program instructions 106. At least a portion of the memory means 105 may be accessible by the transceiver 102. The control means 104 may comprise a controller 104 including one or more processors which perform operations in accordance with program instructions 106 stored in the memory means 105.

In an embodiment, the electronic device 101 comprises an electronic control unit (ECU) 101 A as shown in Fig. 2, for controlling a system within a vehicle. The ECU 101 A has at least one transceiver 102 having at least one port 103 for connection to an Ethernet bus, and may have other Ethernet ports 103. The ECU may also have other transceivers 102A for connection to a different type of data bus, such as a CAN (controller area network) bus, a FlexRay (RTM) bus or a LIN bus.

The ECU 101 A has a controller means 104 that may comprise a processor which performs functions in accordance with the program instructions 106A stored in the memory device 105. The memory device may also store data including a look-up table 107A. When the controller means of the ECU performs a function that requires the transmission of a message over the Ethernet via the port 103, it may do so in accordance with the Ethernet standard for which it has been configured. Thus, it may transmit a signal 300, as may be seen in the schematic representation of Figure 3, comprising Ethernet packets 301 separated by an interpacket gap 302 in which an idle stream is transmitted, as illustrated in Fig. 3. The Ethernet packets 301 sent and received by the ECU include an MAC (media access control) address 304 of the source of the packet and a MAC address 305 of the destination of the packet, as well as a payload 306 and other data as is known for Ethernet.

The ECU (and others on the network to which it is connected) is configured to transmit Ethernet signals including a wake-up pattern 307, which comprises a node identifier 308, within an idle stream 302 before transmitting an Ethernet packet 301 . The wake-up pattern 307 comprising the node identifier 308 enables a network switch that receives the signal to operate in a non-conventional and advantageous manner. In the present embodiment, the wake-up pattern comprises entirely of the node identifier 308. That is, the node identifier 308 is the wake-up pattern 307. However, in alternative embodiments the wake-up pattern may also comprise additional bits that precede, or follow, the node identifier; the additional bits having the same values in all wake-up patterns. In an embodiment, the electronic device 101 may comprise a network switch 101 B as shown in Fig. 4. The switch 101 B comprises a transceiver 102 having a plurality of ports 103. In the present example, the switch has just three ports 103, but network switches having other numbers of ports may be configured in accordance with the present invention. The switch 101 B has a main controller means 104 which may comprise a processor that operates in accordance with program instructions 106B stored in the memory means 105. The memory means also stores data that includes a MAC address look-up table 107B in which the MAC address of each node on the connected network is listed. The transceiver 102 also comprises a controller 401 which has access to a memory means 105B. The memory means 105B may be a part of the memory means 105 or may be a separate memory device provided for the transceiver.

The MAC address of each node is stored in the look-up table 107B with an associated port identifier that identifies a port 103 of the switch 101 B to which the electronic device is connected. This look-up table 107B may be populated from information received over the network from each node in response to a broadcasted discovery packet. For example, a discovery packet is broadcasted by a node on the network and, in response, each node on the network broadcasts a reply that identifies its own MAC address. Thus each node on the network receives the replies which identify every other node on the network. As the switch 101 B receives each of the replies, it stores in the look-up table 107B the MAC address 502 along with the port identifier 503 of its port on which the reply was received.

An example of a MAC address look-up table 501 produced in this way by the network switch 101 B is shown in Fig. 5. For the purposes of illustration, the MAC addresses 502 are represented in Fig. 5, and elsewhere in this specification, using wording of the form "MAC ADDRESS X". However, it will be appreciated that in reality the MAC addresses are a 48 bit binary number (or a 12 digit hexadecimal number). The look-up table 501 relates to an example network 701 shown in Fig. 7, of which network switch 101 B is one of three switches 101 B, 101 C and 101 D. (Network switches 101 C and 101 D differ from network switch 101 B in that they each have four ports 103, but they may otherwise be like switch 101 B.) During subsequent normal operation, the main controller means 104 of the network switch 101 B performs switching operations. Thus, the switch 101 B is configured to receive Ethernet packets via its transceiver 102. The controller 104 is configured to read the destination MAC address from a packet and determine the identity of its port 103 to which the electronic device with that destination MAC address is connected. This may be done by retrieving the port identifier (503 in Fig. 5) of the port from the MAC address look-up table 107B stored in the memory means (105 Fig. 4). The packet is then transmitted over the Ethernet bus connected to the identified port 103.

In order to save energy, the network switch 101 B is configured to place the controller 104 into a low quiescent current state (or deep sleep mode) when packets of data are not being sent or received by its transceiver. In existing network switches, when an Ethernet packet is received by the transceiver, the transceiver wakes up the controller 104 so that the switching operation may be performed. This may also occur in the present switch 101 B. However, the switch 101 B is also configured to operate in a non-conventional manner when in its deep sleep mode and in response to receiving an Ethernet signal including a wake-up pattern 307, which comprises a node identifier 308, within an idle stream 302 transmitted before an Ethernet packet 301 .

For this purpose, the network switch 101 B produces another look-up table 407 which it stores in the memory means 105B accessible by the transceiver 102.

(In an alternative embodiment, the switch 101 B may be configured to operate in such a non- conventional manner in response to receiving an Ethernet signal including a wake-up pattern 307, which comprises a node identifier 308, within an idle stream 302 transmitted immediately after an Ethernet packet 301 .)

A method 800 which may be performed by the switch 101 B to produce the look-up table 407 is shown in Fig. 8. The switch firstly produces a MAC address look-up table, as described above, and therefore at block 801 a plurality of node addresses (in this example MAC addresses) are received via the ports of the transceiver means. Then at block 802, in respect of each of the node addresses, a node identifier identifying a respective one of the other nodes is stored and a respective port identifier identifying the port via which the node address is received. Where the parameters of the Ethernet signal allow it, the node identifier may be the same as the node address. However, for example, in some standards of Ethernet the interpacket gap is too short to use the MAC address as the node identifier and therefore a new shorter node identifier is created and stored.

Thus, for example, the switch 101 B and other nodes on the network may perform the method 900 shown in the flow chart of Fig. 9. At block 901 a plurality of node addresses identifying each one of the other nodes on the network are receive via at least one network port (three ports in the case of switch 101 B). From each of the node addresses a corresponding node identifier is then derived at block 902, and each node address and the corresponding node identifier is stored at block 903.

In some examples, the node identifiers are derived at block 902 from the MAC addresses. For example, this may be achieved by performing a hash function or fingerprint algorithm in respect of the corresponding MAC address. In an example, the node identifiers are derived at block 902 by placing the node addresses in an order according to a rule. For example, the stored MAC addresses may be placed in numerical order, and a node identifier is assigned to each node in numerical order using numbers that comprise a relatively small number of bits. The rule or algorithm that is used for this process is not critical, but it is required that all nodes on the network use a method that results in the same node identifier being generated in respect of each of the nodes and that each of the nodes is assigned a node identifier that is unique within the network. Thus, typically all nodes on the network use the same rule or algorithm to generate the node identifiers using the MAC addresses.

An example of a look-up table 407 created in this way is shown in Fig. 6, along with the MAC addresses 502 from which the table 407 was created. The look-up table 407 comprises node identifiers 308 and corresponding port identifiers 503, but the corresponding MAC addresses are also shown for the purposes of illustration. As may be seen in Fig. 6, the MAC addresses and the corresponding port identifiers 503 have been reordered in accordance with a rule, and a short node identifier has been assigned to each node. Thus, for example, the node having MAC address "MAC ADDRESS A", which is connected to port number 1 of switch 101 B has been assigned the node identifier "03". In this example "03" may be a hexadecimal number and therefore the node identifier is only eight bits long. For a larger network, where more than 256 unique node identifiers are required, a longer node identifier may be used, but it must be short enough to be provided within the interpacket gap. The look-up table 107A stored by the ECU 101 A may be created in a similar way. However, provided that it only has one port connected to the network, it may simply have a look-up table in which the node identifiers 308 have been created and stored alongside the MAC addresses 502 of each node on the network. An example of such a look-up table 107A is shown in Fig. 10.

By these processes each of the ECUs in the network (such as that of Fig. 7) may produce and store a look-up table like that of Fig. 10 while each of the switches 101 B, 101 C and 101 D may produce its own look-up table. For the example network 701 of Fig. 7, the look-up tables 1 101 and 1201 for storage in the memory means 105B of the transceiver 102 of the switches 101 C and 101 D are shown in Figs. 1 1 and 12 respectively.

With these look-up tables established, the ECUs are able to transmit a signal including a wake-up pattern 307 comprising a node identifier 308 within an idle stream 302 before transmitting an Ethernet packet 301 .

With regard to the network switches 101 B, 101 C and 101 D, a method 1400 that may be performed by the transceiver 102 of forwarding a signal 300 including a wake-up pattern 307 comprising a node identifier 308 within an idle stream 302 is shown in Fig. 14. At block 1401 the transceiver monitors received signals for the wake-up pattern 307 comprising a node identifier 308 within the idle stream 302 before an Ethernet packet 301 . At block 1402, a signal comprising an idle stream including a node identifier is received and the node identifier 308 is read. In dependence of receiving a signal including a wake-up pattern comprising a node identifier, the transceiver 102 retrieves from the memory means 105B the port identifier corresponding to the received node identifier at block 1403. That is, the transceiver is configured to look up the node identifier in the look-up table 407 and retrieve the corresponding port identifier, which identifies the port on which the signal should be forwarded. At block 1404, the signal comprising an idle stream including the received node identifier is transmitted via the port identified by the retrieved port identifier. Thus, the transceiver 102 is configured to transmit, over the bus connected to the identified port, the received signal including the wake-up pattern comprising the node identifier, as well as the following Ethernet packet. It should be noted that, with the network switch in the deep sleep mode, the transceiver is able to perform this process without bringing the main controller means 104 into an awake state. Consequently, energy that would otherwise be consumed by the main controller means 104 is saved.

It should also be noted that the transceiver 102 is configured to perform this function without the node address (MAC address) being obtained from the Ethernet packet.

The forwarded signal may then be received by another node on the network, which may perform a similar process. However, the transceiver 102 is configured to wake up the main controller means when the node identifier corresponds to the node in which the transceiver resides. Thus, a node may be awakened selectively to receive a data packet without waking up other nodes in the network.

An example of the operation of this process will now be described in respect of Fig. 7, which shows an Ethernet network 701 within a vehicle 702. The network comprises the three switches 101 B, 101 C and 101 D and seven ECUs 101 A labelled A, B, C, D, E, F and G with corresponding MAC addresses, which are labelled respectively with "MAC ADDRESS A" to "MAC ADDRESS G". Suppose the ECU labelled B wishes to wake-up the ECU labelled F. The ECU labelled B firstly retrieves the node identifier (which is "05" in this example, as shown in Fig. 10) corresponding to "MAC ADDRESS F". It then transmits via the bus 703 a signal comprising the wake-up pattern 307, which comprises the node identifier (in this example "05"), and the desired Ethernet packet 301 .

In response to receiving the wake-up pattern 307, the transceiver 102 of switch 101 B reads the node identifier "05" and retrieves from its memory 105B the corresponding port identifier "3" (as shown in Fig. 5). The transceiver 102 of switch 101 B then transmits, via the bus 704, a signal comprising the wake-up pattern 307, which comprises the node identifier ("05"), and the Ethernet packet 301 .

The signal is thus received at the transceiver 102 of the switch 101 C which performs a similar process to the transceiver of switch 101 B. Therefore, in response to receiving the wake-up pattern 307 the transceiver 102 of switch 101 C reads the node identifier "05" and retrieves from its memory 105B the corresponding port identifier "1 " (as shown in Fig. 1 1 ). The transceiver 102 of switch 101 C then transmits, via the bus 705, a signal comprising the wake-up pattern 307, which comprises the node identifier ("05"), and the Ethernet packet 301 .

The signal is then received at the transceiver 102 of the switch 101 D which performs a similar process. Therefore, in response to receiving the wake-up pattern 307 the transceiver 102 of switch 101 D reads the node identifier "05" and retrieves from its memory 105B the corresponding port identifier "3" (as shown in Fig. 12). The transceiver 102 of switch 101 D then transmits, via the bus 706, a signal comprising the wake-up pattern 307, which comprises the node identifier ("05"), and the Ethernet packet 301 .

In response to receiving the signal, the transceiver of the ECU labelled F may read the node identifier "05" and recognize it as relating to itself. In response to receiving the signal and/or reading the node identifier making the recognition, the transceiver of the ECU labelled F then wakes up its main controller means (if it is in a deep sleep mode) and provides the Ethernet packet to it. The main controller means may then open the packet and access the payload.

Although this example specifically relates to a communication from the ECU labelled B to the one labelled F, it will be appreciated that communication from and to other nodes of the network 701 may be performed in a similar manner.

Processes that may be performed by the switches 101 B, 101 C and 101 D are shown in Fig. 15. At block 1501 the switch receives node addresses and if required, at block 1502, a node identifier corresponding to each node address is derived. At block 1503 the node identifier for each of the other nodes on the network along with a respective port identifier identifying a respective one of the ports is stored. These three processes 1501 , 1502 and 1503 establish the look-up table for use by the transceiver 102. As discussed earlier the node addresses may be received from each node which broadcast their MAC addresses in response to receiving a broadcasted discovery packet. If an alteration is made to the network, for example by removing, replacing or adding a new ECU, a new discovery packet may be broadcast and the processes of blocks 1501 to 1503 may be repeated to create new look-up tables in each of the nodes. In an alternative arrangement, the nodes of the network may be preprogrammed with lookup tables that include a node identifier for each node on the network. For example, in vehicle production, an ECU that provides a specific function may always be assigned the same node identifier during its production. In such cases, the blocks 1501 to 1503 may not be necessary.

With look-up tables established, the transceivers 102 of the network switches (such as 101 B) are configured to repeatedly perform the processes of blocks 1504 to 1506. At block 1504 a signal is received via one of its ports 103 comprising an idle stream 302 including a node identifier 308. At block 1505 the port identifier corresponding to the received node identifier is retrieved and at block 1506 a signal comprising an idle stream including the received node identifier is transmitted via the port identified by the retrieved port identifier.

Processes that may be performed by the ECUs such as electronic control unit 101 A are shown in Fig. 16. At block 1601 node addresses may be received and at block 1602 a node identifier corresponding to each node address may be derived as described above. At block 1603, the node identifier for each of the other nodes on the network along with the node address may be stored in a look-up table such as look-up table 501 that is shown in Fig. 5. As mention above in respect to Fig. 15, it is possible that the processes at blocks 1601 to 1603 may be repeated in the event that the network is altered. Alternatively, it is possible that the processes at blocks 1601 to 1603 may not be necessary if the nodes of the network are preprogrammed with the look-up tables. With the look-up table stored by an ECU, the ECU may perform the process of block 1604, in which it transmits a signal comprising an idle stream including a wake-up pattern comprising a node identifier.

Embodiments of this invention have been described herein before with reference to an Ethernet communication network. However, the present invention is equally applicable to other communication networks, such communications may comprise, but not limited to CAN communication networks, Flexray (RTM) communication networks.

For the purposes of this disclosure, it is to be understood that the controller(s) and/or controller means described herein can each comprise a control unit or computational device having one or more electronic processors. A vehicle and/or a system thereof may comprise a single control unit or electronic controller or alternatively different functions of the controller(s) may be embodied in, or hosted in, different control units or controllers. A set of instructions could be provided which, when executed, cause the controller(s) or control unit(s) to implement the control techniques described herein (including the described method(s)). The set of instructions may be embedded in one or more electronic processors, or alternatively, the set of instructions could be provided as software to be executed by one or more electronic processor(s). For example, a first controller may be implemented in software run on one or more electronic processors, and one or more other controllers may also be implemented in software run on or more electronic processors, optionally the same one or more processors as the first controller. It will be appreciated, however, that other arrangements are also useful, and therefore, the present disclosure is not intended to be limited to any particular arrangement. In any event, the set of instructions described above may be embedded in a computer-readable storage medium (e.g., a non-transitory storage medium) that may comprise any mechanism for storing information in a form readable by a machine or electronic processors/computational device, including, without limitation: a magnetic storage medium (e.g., floppy diskette); optical storage medium (e.g., CD-ROM); magneto optical storage medium; read only memory (ROM); random access memory (RAM); erasable programmable memory (e.g., EPROM ad EEPROM); flash memory; or electrical or other types of medium for storing such information/instructions. The blocks illustrated in the Figs. 8, 9, and 13 to 16 may represent steps in a method and/or sections of code in the computer program 106. The illustration of a particular order to the blocks does not necessarily imply that there is a required or preferred order for the blocks and the order and arrangement of the block may be varied. Furthermore, it may be possible for some steps to be omitted.

Although embodiments of the present invention have been described in the preceding paragraphs with reference to various examples, it should be appreciated that modifications to the examples given can be made without departing from the scope of the invention as claimed.

Features described in the preceding description may be used in combinations other than the combinations explicitly described. Although functions have been described with reference to certain features, those functions may be performable by other features whether described or not.

Although features have been described with reference to certain embodiments, those features may also be present in other embodiments whether described or not.

Whilst endeavoring in the foregoing specification to draw attention to those features of the invention believed to be of particular importance it should be understood that the Applicant claims protection in respect of any patentable feature or combination of features hereinbefore referred to and/or shown in the drawings whether or not particular emphasis has been placed thereon.