WO2015012454A1 - Method of improving network performance by controlling virtual link, and network system employing same - Google Patents
Method of improving network performance by controlling virtual link, and network system employing same Download PDFInfo
- Publication number
- WO2015012454A1 WO2015012454A1 PCT/KR2013/011648 KR2013011648W WO2015012454A1 WO 2015012454 A1 WO2015012454 A1 WO 2015012454A1 KR 2013011648 W KR2013011648 W KR 2013011648W WO 2015012454 A1 WO2015012454 A1 WO 2015012454A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- frame
- bag
- lmax
- virtual link
- reassembly
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/50—Circuit switching systems, i.e. systems in which the path is physically permanent during the communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
Definitions
- the present invention relates to a method for improving network performance and a network system using the same, and more particularly, to a method for improving performance by frame fragmentation in a network in which a maximum allowable value for end-to-end data transmission delay time is set, and a network system using the same. .
- Avionics Full-DupleX Ethernet Switched Network is the core network system specification for the latest avionics system, Integrated Modular Avionics (IMA). Standardized by ARINC 664.
- COTS Cost-Off-The-Shelf
- QoS quality-of-service
- MAC Media Access Control
- a virtual link is established on a 100 Mb / s Ethernet link, which can be shared and used by multiple applications.
- Each virtual link is predefined with the maximum available bandwidth to guarantee QoS.
- the transmission capacity of each virtual link is defined by the minimum transmission interval (BAG) and the maximum transmission length (Lmax).
- end-system which is the source or destination of data
- ES which is the source or destination of data
- the ES is then connected to the switch.
- the ES shall transmit frames according to the BAG and Lmax of the established virtual link.
- the switch monitors whether a frame received from the ES or another switch is transmitting according to a preset appointment, and discards the frame in the case of a violating frame.
- AFDX networks can be configured according to the design because the avionics are pre-determined when designing the aircraft.
- the configuration information of the entire network is determined and reflected in advance.
- FIG. 1 illustrates a frame delay situation in an AFDX network when a conventional method is applied.
- the existing ARINC 664 defines virtual link management as follows.
- VLID Virtual Link Identifier
- Every switch has pre-stored routing information about which input port the virtual link through its switch enters and to which output port (s).
- each switch checks whether the input frame exceeds the Lmax length and whether it is transmitted with the bandwidth allowed for the BAG.
- the AFDX Switch inspects the incoming traffic through the token bucket algorithm. (Policing) However, according to the ARINC 664 Part 7 Chapter 2.0 Switch Specification specification, a switch can be implemented by selecting one of two types of token bucket algorithms.
- One is Byte-based and the other is Frame-based. Or both.
- the number of transmissions of the frames is used as a meaningful value for QoS, and thus, an increase in the number of frames cannot be transmitted due to fragmentation.
- a frame may not be transmitted due to excess data generated by adding a header.
- the virtual link value included in the frame is not changed in the middle or the settings of LmaX and BAG for the same virtual link are not changed.
- an example of delay generation in a conventional AFDX network includes an edge switch receiving frames VL # 1 and VL # 2 from two end systems ES # 1 and ES # 2, respectively.
- (Sa) first transmits a relatively longer second virtual link frame (VL # 2 frame), and then, in the core switch S4, the second virtual link frame (VL # 2 frame) and the third virtual link frame (VL #). 3 frames) arrive at the same time.
- the third virtual link VL # 3 is switched first, the delay time of the first virtual link frame VL # 1 frame arriving at the edge switch Sd is further increased.
- the BAG and Lmax of the virtual link are converted and transmitted using a translation table, and then the virtual link is adjusted to perform frame reassembly, so that every frame can meet the required QoS without excessive delay. It is an object of the present invention to provide an improvement method and a system using the same.
- a network system includes a transform unit for receiving at least one frame from a first end system and a second end system, and then simultaneously converting BAG and Lmax of the frame based on a conversion table, A first edge switch for transmitting a frame; And a reassembly unit configured to determine validity of the frame received from the first edge switch, and to reassemble the frame if the frame is valid, and to transmit a completed frame to a destination end system.
- a method for improving network performance includes receiving a frame through at least one virtual link; Converting BAG and Lmax of the virtual link based on a conversion table and fragmenting and transmitting the frame based on the conversion table; Receiving the fragmented frame and reassembling the fragmented frame if the received frame is valid.
- the present invention it is possible to reduce the requirement of the switch internal memory capacity by performing the optimal fragmentation during frame transmission.
- Lowering the maximum memory size can reduce memory and switch development costs in switch development.
- Lmax length fragmentation reduces the end-to-end delay time when frames arriving at multiple input ports go out to one output port, and the upper range of network delay can be set lower than before, improving network performance. You can.
- the number of packets that can be transmitted within the same delay range is increased to increase the number of virtual links, thereby improving network performance.
- FIG. 1 illustrates a frame transmission flow in an AFDX network.
- FIG. 2 is a block diagram of a network system according to an embodiment of the present invention.
- FIG. 3 is a block diagram of a conversion unit according to an embodiment of the present invention.
- FIG. 4 illustrates an internal memory of a frame buffer according to an embodiment of the present invention.
- FIG. 5 is a diagram illustrating a frame buffer viewed from another point of view according to an embodiment of the present invention.
- FIG. 6 is a diagram illustrating a conversion table according to an embodiment of the present invention.
- FIG. 7 is a block diagram of a reassembly according to an embodiment of the present invention.
- FIG. 8 illustrates an operation of a reassembly memory in an edge switch performing reassembly according to an embodiment of the present invention.
- FIG. 9 is a view illustrating a situation in which payload reassembly is completed according to an embodiment of the present invention.
- FIG. 10 illustrates reassembly of a frame according to an embodiment of the present invention.
- FIG. 11 illustrates reassembly of a frame in a second edge switch according to an exemplary embodiment of the present invention.
- FIG. 12 illustrates reassembly of frames in a third end system according to an embodiment of the present invention.
- FIG. 13 illustrates a general Ethernet frame structure
- 15 is a diagram illustrating frame transmission when BAG and Lmax are changed according to an embodiment of the present invention.
- 16 is a flowchart illustrating a method for improving network performance according to an embodiment of the present invention.
- the network system according to the present invention includes one of the first to third end systems 100, 200, and 600, the first edge switch 300, the second edge switch 500, and an edge switch.
- the above core switch 400 is included.
- the network system to which the present invention is applied is characterized in that the maximum allowable value for the end-to-end data transmission delay is set.
- AFionics Full- DupleX Ethernet Switched Network AFionics Full- DupleX Ethernet Switched Network
- AFDX AFDX network system
- the scope of the present invention is not limited to AFDX, that is, the network system inside the aircraft, but for the end-to-end data transmission delay time. It will be apparent to those skilled in the art that the maximum allowable value may be reached if the network is configured.
- the first edge switch 300 receives at least one frame from the first end system 100 and the second end system 200, and then selects a BAG of each virtual link based on a translation table.
- the converter 310 converts Lmax and transmits a fragmented frame.
- the second edge switch 500 includes a reassembly unit 510 which determines the validity of the frame received from the first edge switch 300 and reassembles the frame if the frame is valid, and ends the completed frame at the destination end. Transfer it to the system.
- first edge switch 300 and the second edge switch 500, the first end system 100, the second end system 200, and the third end system 600 will be described. This is for the convenience of explanation and for the purpose of better understanding, and in a network system according to the present invention, two or more switches (including edge switches and core switches) may exist between two end systems, and two or more multiple end systems may exist. Of course.
- the first edge switch 300 connected to the transmitting end system (100, 200) includes a conversion unit 310, and obtains the converted Lmax 'and BAG' satisfying Equation 1 below Therefore, frame fragmentation is performed and transmitted to the next switch in the network.
- BAG Existing configuration (BAG of virtual link previously defined in the first-end system)
- BAG ' New setting (BAG of the second virtual link newly defined on the first edge switch)
- Lmax Ethernet payload length excluding MAC Destination Address, MAC Source Address, EtherType, Sequence number and FCS.
- Lmax, BAG, Lmax ', and BAG' are only valid integers. At this time, when BAG 'is already determined and a new Lmax' is determined accordingly, Lmax 'is calculated by Equation 1. At this time, when Lmax 'is already determined and a new BAG' is determined accordingly, BAG 'is obtained by Equation 1. At this time, when BAG 'is not an integer, the largest integer smaller than that number is the maximum valid number.
- Determination of Lmax 'in the converter 310 is preferably performed in consideration of the end-to-end delay time required in the network and the maximum buffer capacity in the switch.
- Lmax ' is determined to be smaller than the maximum buffer capacity of each switch in the network including the end system, but the most appropriate value is determined through iterative attempts to find Lmax' which is capable of network operation that can satisfy the allowable inter-delay. do.
- BAG' is determined according to Equation 1 described above, and the virtual link parameters of the end system are adjusted according to Lmax 'and BAG' to fragment the frame from the end system according to Lmax 'and transmit the fragmented Lmax' to BAG. do.
- the unit of BAG is ms.
- some developers can use more precise units.
- the conversion unit 310 converts the BAG and Lmax of each virtual link based on the conversion table.
- the conversion unit 310 creates a conversion table using Equation 1 and performs setting conversion of the virtual link.
- the converter 310 includes a frame buffer 312, a scheduler 314, a frame transmitter 316, and a BAG timer 318.
- the frame buffer 312 stores a frame remaining without being transmitted. That is, the frame buffer 312 stores the remaining frames that are not split and transmitted for fragmentation.
- the scheduler 314 transmits the first fragment of the frame payload based on the conversion table, stores the remaining portion of the frame in the frame buffer 312, and controls to sequentially transmit subsequent fragments in accordance with the converted BAG.
- the frame transmitter 316 transmits a fragmented frame corresponding to the conversion table in response to the control signal from the scheduler 314.
- the scheduler 314 controls to sequentially transmit subsequent fragments corresponding to the conversion table at the time when the BAG timer 318 expires.
- the framer (not shown) configures the same header to the newly split Ethernet payload to generate a frame and attaches a new sequence number. Since the number of frames increases due to fragmentation, a new sequence number must be managed.
- a sequence number counter is used as an 8-bit counter.
- the sequence counting speed also increases in proportion to the ratio of the BAG size.
- Lmax an area for storing the maximum frame length including the header and the like is prepared for each virtual link.
- the fragmented frame corresponding to the first part is transmitted with a new header, a sequence number, and an FCS.
- the size of the buffer unit 312 is sufficient to store one frame of the maximum size for each virtual link.
- FIG. 4 is a diagram illustrating a case where n virtual links are shown.
- Lmax is 1/2 times for the first virtual link, 1/4 times for the second virtual link, and 3 times for the third virtual link. The case where it became 1/8 times was shown. Since the Lmax values after conversion in the first virtual link, the second virtual link, and the third virtual link are different from each other, the lengths of the first transmitted frames are different.
- the third virtual link instead of having a shorter Lmax length, frames are transmitted more frequently than the second virtual link.
- the configuration of the BAG for each virtual link is not shown. This may be considered to be the case where the BAGs of the second virtual link and the third virtual link are the same.
- FIG. 5 is a diagram illustrating a frame buffer viewed from another viewpoint according to an embodiment of the present invention. As shown in Fig. 5, the second fragment frame of the second virtual link is transmitted when the reference time point expires of the converted first BAG 'of the second virtual link.
- the third virtual link has already finished transmitting the second fragment frame, and transmits the third fragment frame.
- the left and right arrows indicate a frame, and the left side is a frame input from the first edge switch 110.
- One frame is received, which is fragmented and split several times, like the right arrow.
- the information on the virtual link in the conversion table is composed of information before conversion (Config # 1) and information after conversion (Config # 2).
- Integrity Check is the process of checking the validity of a frame. Validation of the frame includes checking constant values in the header, checking for FCS errors, checking whether the frame length is shorter than the minimum length or longer than the maximum length Lmax.
- Policing checks to see if the frame is valid and arrives at the virtual link settings before conversion. If entered before the BAG interval, the frame is ignored. According to the ARINC 664 Part 7 Specification 4.0 Switch Specification chapter, Policing on a switch is based on the token bucket algorithm.
- conversion unit 310 If conversion is required among the frames passed in this way, it enters the conversion unit 310. In the case of a virtual link having no translation information in the translation table, it is directly transmitted to the redundant module (not shown) from Policing without passing through the conversion unit 310 to be transmitted to another switch.
- FIG. 6 is a diagram illustrating a conversion table according to an embodiment of the present invention.
- the first edge switch 300 has a conversion table.
- n virtual links need translation, there are n virtual link translation information.
- the values located in Config # 2 (after conversion) satisfy the condition of Equation 1.
- Config # 1 (before conversion) with a BAG of 8 ms and an Lmax of 1499 bytes is converted to Config # 2, which translates into a Bmax of 750 bytes at 4 ms.
- Dividing 1499 bytes by the BAG variation has a value of 749.5, with a minimum integer greater than this value being 750.
- the BAG is reduced to 1 and Lmax 'is 187.375 bytes according to Equation 1 when the transmission frequency is increased. So with the new Config # 2, Lmax 'is determined to be 188 bytes, the smallest integer greater than 187.375.
- the reassembly unit 510 includes a reassembly memory 512, a reassembly control unit 514, a frame transmission unit 516, and a framer 518.
- the reassembly memory 512 stores only the payload of the frame when the received frame is valid.
- the reassembly control unit 514 stores the frame sequence number and checks whether the frame sequence number is an error.
- the frame transmitter 516 checks whether the stored frame is a complete payload and transfers the completed payload to the framer 518.
- the framer 518 completes and transmits the frame by attaching a pre-conversion header, a sequence number, and an FCS corresponding to Config # 1 of the conversion table to the payload received from the frame transmitter 516.
- FIG. 8 is a conceptual diagram illustrating a mode in which a conversion frame is accumulated in the reassembly memory 512 in the second edge switch 500 performing reassembly according to an embodiment of the present invention.
- the received frame accumulates only the payload in the reassembly memory 512 as shown in FIG. 8.
- FIG. 9 is a view illustrating a situation in which payload reassembly is completed according to an embodiment of the present invention.
- the header, sequence number, and FCS are added to the payload of the completed frame to make it into an Ethernet frame and delivered to the end switch. At this time, the sequence number is restored and assigned as in the fragmentation process.
- the second edge switch 500 checks the validity of the received frame by performing Integrity and Policing checks according to the information (Config # 2) after the conversion. If the received frame is a valid frame, only the payload is stored in the reassembly memory 512. Then, the reassembly control unit 514 stores the sequence number of the received frame in the SEQ memory (not shown) and checks whether there is no sequence number error in every received frame.
- the frame payer 516 reads from the reassembled memory 512 and transfers them to the framer 518.
- the framer 518 transmits an Ethernet frame by attaching a header, a sequence number, and an FCS that match the pre-conversion information (Config # 1) to the received payload.
- FCS Frame Check Sequence
- the second edge switch 500 may exchange the frame with the same virtual link setup as the first and second end systems 100 and 200, which are transmission end systems. have.
- the third end system 600 receives the converted frame in the same manner as the receiving process of the existing AFDX frame. .
- the reassembly of the fragmented frame may be performed in the third end system 600 which is the final destination of the frame instead of the second edge switch 500.
- the third end system 600 includes a reassembly unit 610 that performs the same function as the reassembly unit 510.
- FIG. 11 is a view illustrating reassembly of a frame at a second edge switch 500 according to an embodiment of the present invention
- FIG. 12 is a view illustrating a third end system 600 according to another embodiment of the present invention.
- the first edge switch 300 of FIG. 11 receives the hatched frame, fragments it into two pieces, and transmits the same to the core switch 400.
- the core switch 400 delivers the fragmented hatched frame to the second edge switch 500 according to the existing AFDX network standard.
- the second edge switch 500 reassembles the hatched fragmented frame and delivers it to the end system (not shown).
- the thick frame is input to the input port of the core switch 410 and then divided into two parts and delivered to the second edge switch 500, and then reassembled and delivered to the third end system 600.
- the method of receiving at the last stage is different.
- the second edge switch 500 performs frame reassembly and delivers the completed frame to the third end system 600.
- the second edge switch 500 transmits as received, and the third end system 600 performs frame reassembly.
- the settings in the second edge switch 500 and the third end system 600 are different according to the two cases.
- the third end system 600 has the same BAG and Lmax as the first end system 100 and the second end system 200. Each end system does not know the fragmentation process.
- FIG. 12 new virtual link setting values set in the first edge switch 300, the core switch S1 400, the core switch S2 410, and the second edge switch 500 in the third end system 600. The same value is set. No special reassembly and transfer to the original configuration is necessary. Thus, FIG. 12 is simpler in network configuration than in FIG. However, the BAG and Lmax settings do not match between end switches or end systems, which may cause confusion during maintenance.
- the virtual link configuration of ES # 3 and the virtual frame corresponding to the same frame of ES # 8 are different. Therefore, the virtual link configuration may be different even though the frame is substantially the same.
- FIG. 13 illustrates a general Ethernet frame structure
- FIG. 14 illustrates an AFDX Ethernet frame structure.
- AFDX Ethernet frame has 1 byte space where sequence number is stored before FCS (Frame Check Sequence).
- payload can be sent one byte less than a regular Ethernet frame. In normal frames, up to 1500 bytes can be transmitted, while AFDX can deliver up to 1499 bytes in one payload.
- interframe spacing There is a 96-bit empty space called interframe spacing (IFS) between frames. This is made in consideration of the technical delay time required for transmitting / receiving a frame.
- FIG. 15 is a diagram illustrating frame transmission when BAG and Lmax are changed according to an embodiment of the present invention. As shown in Fig. 15, the frame transmission is shown when the BAG is twice as fast (value is 1/2 times) and Lmax is shortened by 1/2 times.
- fragmentation increases the total amount of traffic used.
- Added headers, FCS IFS, etc. The engineer who decides to set up the AFDX will need to determine each value in the translation table, taking into account the increased amount of traffic when creating the translation table.
- sequence number of 1 byte At the end of the frame payload is a sequence number of 1 byte. It is a number managed independently for each virtual link. It has a value from 0 to 255. The initial value starts with 0. And when it reaches 255, it turns to 1 and cycles.
- the sender wants to initialize the sequence number 0 is transmitted.
- the receiving end receives the sequence number of 0, the receiving end judges the sequence number initialization on the transmitting side and initializes the sequence number.
- Lmax is twice as long as Lmax 'but the payload carried in actual transmission is less than half of Lmax, fragmentation does not occur.
- sequence number is the same before or after the conversion.
- the fragmented frame sequence number also starts again from zero. Even during the reassembly process, if the first fragmented frame sequence number is zero, the sequence number of the reassembled frame is also initialized to zero.
- ID field and More field are used for fragmentation. Packets with the same ID value indicate fragmentation, and whether or not the last fragmented packet is confirmed by the value of the More field.
- AFDX frames do not provide a separate field for fragmentation like IP.
- AFDX operates deterministicly according to BAG and Lmax according to network profiling to ensure deterministic QoS.
- Tc The time when the currently received fragmented frame arrived
- DIFF_BAG The minimum integer value greater than or equal to BAG_a / BAG_b, which is greater than 1.
- the second edge switch 500 If Tc-T1 is greater than or equal to BAG_a, the second edge switch 500 considers that the number of previously received and reassembled frames is less than DIFF_BAG but the reassembled data is complete. In this case, the second edge switch 500 transfers the frame to the framer.
- the sequence number N is initialized to zero.
- the currently received fragmented frame becomes the first fragmented frame, and stores the fragmented frame in the front part of the reassembly memory.
- the reassembly process is performed according to the following conditions 1) to 4).
- N + 1 is equal to DIFF_BAG
- the second edge switch 500 confirms that the last fragmented frame has arrived. That is, the frame that was previously received and reassembled is completed. The second edge switch 500 transfers the completed frame to the framer and initializes N to zero. If N is 0, the currently received fragmented frame becomes the first fragmented frame.
- the second edge switch 500 stores the received frame in the front part of the reassembly memory. If the currently received sequence number is 0, it is initialized together. Otherwise, it is increased. If the sequence number is continuously increased to 255, change it to 1.
- the second edge switch 500 may not know whether the currently received fragmented frame is the last. Accordingly, the second edge switch 500 attaches and stores the frame to the reassembly memory.
- 15 is a flowchart illustrating a method for improving AFDX network performance according to an embodiment of the present invention.
- the first edge switch 300 receives a frame from at least one virtual link from a transmission end system (S310).
- S310 transmission end system
- the received frame is fragmented based on the conversion table and transmitted (S320).
- the conversion unit 310 converts the BAG and Lmax of each virtual link based on the conversion table.
- the conversion unit 310 creates a conversion table and performs virtual link conversion using Equation 1.
- the scheduler 314 in the converter 310 transmits the first fragment according to the converted Lmax in the frame payload based on the conversion table, stores the remaining part of the frame in the frame buffer 312, and then converts It transmits sequentially in Lmax unit converted to BAG.
- the frame transmitter 316 transmits the fragmented frame under the control of the scheduler 314.
- the second edge switch 500 After receiving the fragmented frame via the virtual link, the second edge switch 500 confirms the validity of the received frame and reassembles the frame if the received frame is valid (S330).
- the second edge switch 500 determines the validity of the received frame using Equation 1. When the second edge switch 500 determines that the received frame is valid, only the payload of the received frame is stored, the frame sequence number is stored, and the frame sequence number is checked for errors.
- the second edge switch 500 confirms that the reassembly is completed.
- the present invention it is possible to reduce the requirement of the switch internal memory capacity by performing the optimal fragmentation during frame transmission.
- Lowering the maximum memory size can reduce memory and switch development costs in switch development.
- Lmax length fragmentation reduces the end-to-end delay time when frames arriving at multiple input ports go out to one output port, and the upper range of network delay can be set lower than before, improving network performance. You can.
- the number of packets that can be transmitted within the same delay range is increased to increase the number of virtual links, thereby improving network performance.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The present invention relates to a method of improving network performance by controlling a virtual link and a network system employing the same. The purpose of the present invention is to provide a method of improving the performance of an AFDX network for converting and transmitting BAG and Lmax of a virtual link and performing frame reassembly, and an AFDX network system employing the same. The method comprises the steps of: receiving at least one frame from a first end system and a second end system; converting BAG and Lmax of a virtual link on the basis of a conversion table; transmitting fragmented frames; and reassembling the received frames and transmitting the completed frames. According to the present invention, it is possible to reduce the capacity requirement for a switch internal memory by performing optimal fragmentation when transmitting frames. Further, it is possible to lower the price of a memory and switch development costs in developing a switch by reducing a maximum memory size.
Description
본 발명은 네트워크 성능 개선 방법 및 이를 적용한 네트워크 시스템에 관한 것으로서, 더 구체적으로는 종단 간의 데이터 전송 지연시간에 대한 최대 허용 값이 설정된 네트워크에서 프레임 단편화에 의한 성능 개선 방법과 이를 적용한 네트워크 시스템에 관한 것이다.The present invention relates to a method for improving network performance and a network system using the same, and more particularly, to a method for improving performance by frame fragmentation in a network in which a maximum allowable value for end-to-end data transmission delay time is set, and a network system using the same. .
AFDX(Avionics Full-DupleX Ethernet Switched Network)는 최신예 항공전자 시스템인 IMA(Integrated Modular Avionics)의 핵심 네트워크 시스템 규격이다. ARINC 664에 의해서 표준화되어 있다. Avionics Full-DupleX Ethernet Switched Network (AFDX) is the core network system specification for the latest avionics system, Integrated Modular Avionics (IMA). Standardized by ARINC 664.
COTS(Cost-Off-The-Shelf) 개념의 기술로서 기존의 이더넷을 기반으로 하여 신뢰성과 경제성을 확보하고 항공전자 시스템에서 요구하는 확정적(Determinstic) QoS(Quality-of-Service) 요구사항을 만족시키기 위해서 특별한 MAC(Media Access Control) 기능이 있다. COTS (Cost-Off-The-Shelf) technology is based on the existing Ethernet to secure reliability and economics and meet the deterministic quality-of-service (QoS) requirements of avionics systems. There is a special MAC (Media Access Control) function.
100 Mb/s 이더넷 링크에 가상 링크(Virtual Link)가 설정되어 여러 어플리케이션이 공유해서 사용할 수 있으며, 각 가상 링크에는 QoS 보장을 위해서 최대 사용 가능한 대역폭을 미리 정의한다. 최소 전송 가능한 간격인 BAG(Bandwidth Allocation Gap)와 최대 전송 길이 (Lmax)로 각 가상 링크의 전송 용량을 정의한다. A virtual link is established on a 100 Mb / s Ethernet link, which can be shared and used by multiple applications. Each virtual link is predefined with the maximum available bandwidth to guarantee QoS. The transmission capacity of each virtual link is defined by the minimum transmission interval (BAG) and the maximum transmission length (Lmax).
AFDX 네트워크에서 데이터의 근원지 또는 목적지가 되는 엔드 시스템(End-System ; ES)에는 여러 개의 가상 링크들이 설정되어 있다. 그리고 ES는 스위치에 연결된다. ES는 설정된 가상 링크의 BAG와 Lmax에 맞게 프레임을 송신해야 한다. 그리고 스위치는 ES 혹은 다른 스위치로부터 수신한 프레임이 미리 설정된 약속대로 전송하고 있는지를 감시하고 위반하는 프레임의 경우에 해당 프레임을 버린다. In the AFDX network, end-system (ES), which is the source or destination of data, is set up with several virtual links. The ES is then connected to the switch. The ES shall transmit frames according to the BAG and Lmax of the established virtual link. The switch monitors whether a frame received from the ES or another switch is transmitting according to a preset appointment, and discards the frame in the case of a violating frame.
상용 이더넷은 몇 개의 노드가 스위치에 연결될지 스위치가 몇 개가 연결되어 네트워크를 구성할 지에 대한 예측이 어려운 데 비하여, AFDX 네트워크는 항공기 설계시 항공 전자 부품들이 미리 정해지기 때문에 그 설계 내용에 맞추어 네트워크 설정을 결정할 수 있어 확정적 QoS를 보장하기 위해서 전체 네트워크의 설정 정보를 미리 결정하고 반영한다. Commercial Ethernet is difficult to predict how many nodes will be connected to the switch or how many switches will be connected to form a network, whereas AFDX networks can be configured according to the design because the avionics are pre-determined when designing the aircraft. In order to guarantee the definite QoS, the configuration information of the entire network is determined and reflected in advance.
이더넷 스위치 내부에는 스위칭을 하기 위해서 메모리가 있는데, 이는 여러 입력 포트에 도착한 프레임들이 동일한 출력 포트로 나가려고 할 때의 충돌(Head of line blocking)을 막기 위해 프레임들을 잠시 보관하는 역할을 한다. 그런데 이 메모리의 크기가 프레임의 길이에 의존적이다. Inside the Ethernet switch there is a memory for switching, which temporarily holds frames to prevent head of line blocking when frames arriving at multiple input ports attempt to exit to the same output port. However, the size of this memory depends on the length of the frame.
복수 개의 입력 포트에 도착한 프레임들이 하나의 출력 포트로 나가는 경우 특정 가상 링크에 대해 최대 길이 Lmax를 갖는 프레임이 입력 포트들로 동시에 도착하여 동일한 출력 포트들로 나갈려고 한다. 그러므로 하드웨어로 스위칭을 구성할 경우에는 프레임의 최대 크기가 메모리 크기를 좌우하기 때문에 Lmax값을 작게 유지하는 것이 필요하다. 메모리 크기가 작으면 그만큼 제작 비용이 감소하기 때문이다. When frames arriving at multiple input ports go out to one output port, a frame having a maximum length Lmax for a particular virtual link simultaneously arrives at the input ports and exits to the same output ports. Therefore, when configuring switching with hardware, it is necessary to keep the Lmax value small because the maximum size of the frame determines the memory size. The smaller the memory size, the lower the production cost.
단, Lmax를 작게 유지할 경우에는 그에 따른 헤더 오버헤드가 발생해서 네트워크 대역폭의 사용률이 그만큼 나빠지게 된다. However, if Lmax is kept small, the header overhead is caused, and the utilization rate of network bandwidth becomes that bad.
도 1은 종래의 방식을 적용하는 경우 AFDX 네트워크에서 프레임 지연 상황을 설명하기 위한 도면이다. FIG. 1 illustrates a frame delay situation in an AFDX network when a conventional method is applied.
기존의 ARINC 664는 가상 링크 관리법을 다음과 같이 정의한다.The existing ARINC 664 defines virtual link management as follows.
모든 가상 링크는 BAG와 Lmax 값을 갖는다. 그리고 VLID(가상 링크 식별자)는 모든 프레임 MAC Destination 주소 영역에 16비트 값으로 기재되어 있다. All virtual links have BAG and Lmax values. The VLID (Virtual Link Identifier) is described as a 16-bit value in every frame MAC Destination Address field.
모든 스위치에는 자신의 스위치를 통과하는 가상 링크가 어떤 입력 포트로 들어와서 어떤 출력 포트(들)로 나갈지에 대한 라우팅 정보가 미리 저장되어 있다. Every switch has pre-stored routing information about which input port the virtual link through its switch enters and to which output port (s).
각 스위치는 라우팅 정보를 바탕으로 입력된 프레임이 Lmax 길이를 초과하는 지 검사하고 BAG에 맞게 허용된 대역폭으로 전송되는지를 검사한다. Based on the routing information, each switch checks whether the input frame exceeds the Lmax length and whether it is transmitted with the bandwidth allowed for the BAG.
AFDX Switch에서는 Token bucket 알고리즘을 통해 입력되는 트래픽을 검사한다. (Policing) 그런데, ARINC 664 Part 7 Chapter 2.0 Switch Specification 규격에 따르면 스위치는 두 가지 방식의 token bucket 알고리즘 중 하나를 선택해 구현할 수 있다. The AFDX Switch inspects the incoming traffic through the token bucket algorithm. (Policing) However, according to the ARINC 664 Part 7 Chapter 2.0 Switch Specification specification, a switch can be implemented by selecting one of two types of token bucket algorithms.
하나는 Byte-based 이고 다른 하나는 Frame-based 이다. 또는 둘 다 구현할 수 있다. Frame-based 방식의 알고리즘을 적용하는 경우에는 프레임의 전송 개수가 QoS에 의미있는 값으로 사용되고 있어서, 단편화로 인해 늘어나는 프레임을 전송할 수 없게 되는 경우가 있다. One is Byte-based and the other is Frame-based. Or both. In the case of applying a frame-based algorithm, the number of transmissions of the frames is used as a meaningful value for QoS, and thus, an increase in the number of frames cannot be transmitted due to fragmentation.
또한, Byte-based의 경우 헤더가 추가되어 발생하는 초과 데이터로 인하여 프레임을 전송하지 못할 수도 있다. In addition, in the case of byte-based, a frame may not be transmitted due to excess data generated by adding a header.
뿐만 아니라, 종래의 AFDX에서는 프레임에 포함된 가상 링크 값이 도중에 변경되거나 동일한 가상 링크에 대한 LmaX, BAG의 설정이 변경되는 경우가 없다. In addition, in the conventional AFDX, the virtual link value included in the frame is not changed in the middle or the settings of LmaX and BAG for the same virtual link are not changed.
도 1을 참조하여 종래의 AFDX 망에서의 지연 발생의 경우를 예시하면, 두 개의 엔드 시스템(ES#1, ES#2)으로부터 각각 프레임(VL#1, VL#2 프레임)을 수신한 에지 스위치(Sa)는 상대적으로 더 긴 제2가상 링크 프레임(VL#2 프레임)을 먼저 전송하고, 코어 스위치(S4)에서 제2가상 링크 프레임(VL#2 프레임)과 제3가상 링크 프레임(VL#3 프레임)이 동시에 도착한다. 이때에도 제3가상 링크(VL#3)가 먼저 스위칭되면 에지 스위치(Sd)에 도착하는 제1가상 링크 프레임(VL#1 프레임)의 지연 시간이 더 늘어나게 된다. Referring to FIG. 1, an example of delay generation in a conventional AFDX network includes an edge switch receiving frames VL # 1 and VL # 2 from two end systems ES # 1 and ES # 2, respectively. (Sa) first transmits a relatively longer second virtual link frame (VL # 2 frame), and then, in the core switch S4, the second virtual link frame (VL # 2 frame) and the third virtual link frame (VL #). 3 frames) arrive at the same time. In this case, when the third virtual link VL # 3 is switched first, the delay time of the first virtual link frame VL # 1 frame arriving at the edge switch Sd is further increased.
따라서, 각 스위치에 상이한 가상 링크의 프레임이 동시에 도착할 때, 특정 가상 링크의 프레임이 과도하게 지연되는 불공정한 경우가 발생할 수 있다. Thus, when frames of different virtual links arrive at each switch at the same time, an unfair case may occur in which frames of a particular virtual link are excessively delayed.
이러한 지연 시간이 시스템에서 요구하는 최대 지연 시간을 초과한다면 시스템 구성은 사용하기 어려운 문제점이 있었다.If the delay time exceeds the maximum delay required by the system, the system configuration is difficult to use.
본 발명은 가상 링크의 BAG와 Lmax을 변환 테이블을 이용하여 변환하고 전송한 뒤 프레임 재조립을 수행하도록 가상 링크의 설정을 조정하여, 모든 프레임이 과도한 지연 발생 없이 요구 QoS를 충족할 수 있는 네트워크 성능 개선 방법 및 이를 적용한 시스템을 제공하는 것을 목적으로 한다.According to the present invention, the BAG and Lmax of the virtual link are converted and transmitted using a translation table, and then the virtual link is adjusted to perform frame reassembly, so that every frame can meet the required QoS without excessive delay. It is an object of the present invention to provide an improvement method and a system using the same.
본 발명의 일면에 따른 네트워크 시스템은 제1엔드 시스템과 제2엔드 시스템으로부터 적어도 하나의 프레임을 수신한 후, 변환 테이블을 기초로 상기 프레임의 BAG과 Lmax를 동시에 변환하는 변환부를 포함하며, 변환된 프레임을 전송하는 제1에지 스위치; 및 상기 제1에지 스위치로부터 수신된 프레임의 유효성을 판단하고, 상기 프레임이 유효하면 상기 프레임을 재조립하는 재조립부를 포함하고, 완성된 프레임을 목적지 엔드 시스템으로 전송하는 제2에지 스위치를 포함한다. According to an aspect of the present invention, a network system includes a transform unit for receiving at least one frame from a first end system and a second end system, and then simultaneously converting BAG and Lmax of the frame based on a conversion table, A first edge switch for transmitting a frame; And a reassembly unit configured to determine validity of the frame received from the first edge switch, and to reassemble the frame if the frame is valid, and to transmit a completed frame to a destination end system. .
본 발명의 다른 면에 따른 네트워크 성능 개선 방법은 적어도 하나의 가상 링크를 통하여 프레임을 수신하는 단계; 변환 테이블을 기초로 상기 가상 링크의 BAG과 Lmax를 변환하고 이에 기초하여 상기 프레임을 단편화하여 전송하는 단계; 및 상기 단편화된 프레임을 수신하고 수신된 프레임이 유효하면 상기 단편화된 프레임을 재조립하는 단계를 포함한다.According to another aspect of the present invention, a method for improving network performance includes receiving a frame through at least one virtual link; Converting BAG and Lmax of the virtual link based on a conversion table and fragmenting and transmitting the frame based on the conversion table; Receiving the fragmented frame and reassembling the fragmented frame if the received frame is valid.
본 발명에 따르면, 프레임 전송시 최적의 단편화를 수행하여 스위치 내부 메모리 용량의 요구도를 낮출 수 있다. 최대 메모리 크기를 낮추어 스위치 개발에 있어서 메모리 비용 및 스위치 개발 비용을 절감할 수 있다.According to the present invention, it is possible to reduce the requirement of the switch internal memory capacity by performing the optimal fragmentation during frame transmission. Lowering the maximum memory size can reduce memory and switch development costs in switch development.
또한, Lmax 길이의 단편화를 통해 복수 개의 입력 포트에 도착한 프레임들이 하나의 출력 포트로 나가는 경우 End-to-end 지연 시간이 줄어들게 되어, 네트워크 지연의 상위 범위를 종전보다 낮게 설정할 수 있어 네트워크 성능을 향상시킬 수 있다. In addition, Lmax length fragmentation reduces the end-to-end delay time when frames arriving at multiple input ports go out to one output port, and the upper range of network delay can be set lower than before, improving network performance. You can.
뿐만 아니라, 동일한 지연 범위 내에서 전송할 수 있는 패킷 양이 증가하여 가상 링크의 개수를 늘릴 수 있어 네트워크 성능을 향상시킬 수 있다.In addition, the number of packets that can be transmitted within the same delay range is increased to increase the number of virtual links, thereby improving network performance.
도 1은 AFDX 네트워크에서 프레임 전송 흐름을 예시한 도면.1 illustrates a frame transmission flow in an AFDX network.
도 2는 본 발명의 실시 예에 따른 네트워크 시스템의 구성도.2 is a block diagram of a network system according to an embodiment of the present invention.
도 3은 본 발명의 실시 예에 따른 변환부의 구성도.3 is a block diagram of a conversion unit according to an embodiment of the present invention.
도 4는 본 발명의 실시 예에 따른 프레임 버퍼의 내부 메모리를 도시한 도면.4 illustrates an internal memory of a frame buffer according to an embodiment of the present invention.
도 5는 본 발명의 실시 예에 따른 다른 시각에서 본 프레임 버퍼를 도시한 도면.5 is a diagram illustrating a frame buffer viewed from another point of view according to an embodiment of the present invention.
도 6은 본 발명의 실시 예에 따른 변환 테이블을 도시한 도면.6 is a diagram illustrating a conversion table according to an embodiment of the present invention.
도 7은 본 발명의 실시 예에 따른 재조립부의 구성도.7 is a block diagram of a reassembly according to an embodiment of the present invention.
도 8은 본 발명의 실시 예에 따른 재조립을 수행하는 에지 스위치에서 재조립 메모리의 동작을 도시한 도면.8 illustrates an operation of a reassembly memory in an edge switch performing reassembly according to an embodiment of the present invention.
도 9는 본 발명의 실시 예에 따른 페이로드 재조립이 완료된 상황을 도시한 도면.9 is a view illustrating a situation in which payload reassembly is completed according to an embodiment of the present invention.
도 10은 본 발명의 실시 예에 따른 프레임을 재조립하는 것을 도시한 도면.10 illustrates reassembly of a frame according to an embodiment of the present invention.
도 11은 본 발명의 실시 예에 따른 제2에지 스위치에서 프레임을 재조립하는 것을 도시한 도면.FIG. 11 illustrates reassembly of a frame in a second edge switch according to an exemplary embodiment of the present invention. FIG.
도 12는 본 발명의 실시 예에 따른 제3엔드 시스템에서 프레임을 재조립하는 것을 도시한 도면.12 illustrates reassembly of frames in a third end system according to an embodiment of the present invention.
도 13은 일반 이더넷 프레임 구조를 도시한 도면.13 illustrates a general Ethernet frame structure.
도 14는 AFDX 이더넷 프레임 구조를 도시한 도면.14 illustrates an AFDX Ethernet frame structure.
도 15는 본 발명의 실시 예에 따른 BAG, Lmax를 변화한 경우 프레임 전송을 도시한 도면.15 is a diagram illustrating frame transmission when BAG and Lmax are changed according to an embodiment of the present invention.
도 16은 본 발명의 실시 예에 따른 네트워크 성능 개선 방법의 순서도.16 is a flowchart illustrating a method for improving network performance according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의된다. 한편, 본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, only the embodiments are to make the disclosure of the present invention complete, and those skilled in the art to which the present invention pertains. It is provided to fully inform the scope of the invention, and the invention is defined by the scope of the claims. Meanwhile, the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In this specification, the singular also includes the plural unless specifically stated otherwise in the phrase. As used herein, “comprises” and / or “comprising” refers to a component, step, operation and / or device that is present in one or more other components, steps, operations and / or elements. Or does not exclude additions.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명하기로 한다. Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention;
도 2는 본 발명의 실시 예에 따른 네트워크 시스템의 구성도이다. 도 2에 도시한 바와 같이, 본 발명에 따른 네트워크 시스템은 제1 내지 제3엔드 시스템(100, 200, 600), 제1에지 스위치(300), 제2에지 스위치(500)와 에지 스위치간의 하나 이상의 코어 스위치(400)를 포함한다. 2 is a block diagram of a network system according to an embodiment of the present invention. As shown in FIG. 2, the network system according to the present invention includes one of the first to third end systems 100, 200, and 600, the first edge switch 300, the second edge switch 500, and an edge switch. The above core switch 400 is included.
본 발명이 적용되는 네트워크 시스템은 종단 간의 데이터 전송 지연시간에 대한 최대 허용 값이 설정되는 특징이 있는데, 대표적인 예로 최신예 항공전자 시스템인 IMA(Integrated Modular Avionics)의 핵심 네트워크 시스템 규격인 AFDX(Avionics Full-DupleX Ethernet Switched Network)를 들 수 있다. The network system to which the present invention is applied is characterized in that the maximum allowable value for the end-to-end data transmission delay is set. As a representative example, AFionics Full- DupleX Ethernet Switched Network).
설명의 편의를 위해, 아래에서는 AFDX 네트워크 시스템을 예를 들어 본 발명에 대해서 설명하나, 본 발명의 권리범위는 AFDX 즉, 항공기 내부의 네트워크 시스템에 한정되는 것이 아니라, 종단 간의 데이터 전송 지연시간에 대한 최대 허용 값이 설정된 네트워크라면 미칠 수 있음은 당업자에게 자명할 것이다.For convenience of description, the following describes the present invention with an AFDX network system as an example, but the scope of the present invention is not limited to AFDX, that is, the network system inside the aircraft, but for the end-to-end data transmission delay time. It will be apparent to those skilled in the art that the maximum allowable value may be reached if the network is configured.
도 2를 참조하면, 제1에지 스위치(300)는 제1엔드 시스템(100)과 제2엔드 시스템(200)으로부터 적어도 하나의 프레임을 수신한 후, 변환 테이블을 기초로 각 가상 링크의 BAG과 Lmax를 변환하는 변환부(310)를 포함하며, 단편화된 프레임을 전송한다. Referring to FIG. 2, the first edge switch 300 receives at least one frame from the first end system 100 and the second end system 200, and then selects a BAG of each virtual link based on a translation table. The converter 310 converts Lmax and transmits a fragmented frame.
제2에지 스위치(500)는 제1에지 스위치(300)로부터 수신된 프레임의 유효성을 판단하고, 프레임이 유효하면 프레임을 재조립하는 재조립부(510)를 포함하고, 완성된 프레임을 목적지 엔드 시스템으로 전송한다. The second edge switch 500 includes a reassembly unit 510 which determines the validity of the frame received from the first edge switch 300 and reassembles the frame if the frame is valid, and ends the completed frame at the destination end. Transfer it to the system.
한편, 본 명세서에서 제1에지 스위치(300) 및 제2에지 스위치(500), 제1엔드 시스템(100), 제2엔드 시스템(200) 및 제3엔드 시스템(600)을 중심으로 설명하나, 이는 설명의 편의와 이해의 증진을 위함이고 본 발명에 따른 네트워크 시스템에는 두 개의 엔드 시스템 사이에는 둘 이상의 다수의 스위치(에지 스위치, 코어 스위치 포함)가 존재하고 둘 이상의 다수의 엔드 시스템이 존재할 수 있음은 물론이다. Meanwhile, in the present specification, the first edge switch 300 and the second edge switch 500, the first end system 100, the second end system 200, and the third end system 600 will be described. This is for the convenience of explanation and for the purpose of better understanding, and in a network system according to the present invention, two or more switches (including edge switches and core switches) may exist between two end systems, and two or more multiple end systems may exist. Of course.
본 발명에서, 송신측 엔드 시스템(100, 200)에 연결된 제1에지 스위치(300)는 변환부(310)를 포함하고, 아래의 수학식 1에 충족하는 변환된 Lmax' 및 BAG'를 구하고 이에 따라 프레임 단편화를 수행하여 네트워크 내 다음 스위치로 전송한다.In the present invention, the first edge switch 300 connected to the transmitting end system (100, 200) includes a conversion unit 310, and obtains the converted Lmax 'and BAG' satisfying Equation 1 below Therefore, frame fragmentation is performed and transmitted to the next switch in the network.
Lmax : 기존 설정 (제1엔드 시스템에 기 정의된 가상 링크의 Lmax)Lmax: Existing setting (Lmax of the virtual link predefined in the first-end system)
Lmax' : 새로운 설정 (제1에지 스위치에서 새롭게 정의된 가상 링크의 Lmax)Lmax ': New setting (Lmax of the virtual link newly defined on the first edge switch)
BAG : 기존 설정 (제1엔드 시스템에 기 정의된 가상 링크의 BAG)BAG: Existing configuration (BAG of virtual link previously defined in the first-end system)
BAG' : 새로운 설정 (제1에지 스위치에 새롭게 정의된 제2가상 링크의 BAG)BAG ': New setting (BAG of the second virtual link newly defined on the first edge switch)
여기서, Lmax는 MAC Destination Address, MAC Source Address, EtherType, Sequence number와 FCS를 제외한 Ethernet 페이로드 길이를 의미한다.Here, Lmax means Ethernet payload length excluding MAC Destination Address, MAC Source Address, EtherType, Sequence number and FCS.
Lmax, BAG, Lmax', BAG'는 정수만이 유효하다. 이때, BAG'가 이미 결정되어 있고 그에 따른 새로운 Lmax'를 결정할 때 수학식 1에 의해 Lmax'를 구한다. 이때, Lmax'가 이미 결정되어 있고 그에 따른 새로운 BAG'를 결정할 때, 수학식 1에 의해 BAG'를 구한다. 이때 BAG'가 정수가 아닌 경우에는 그 수보다 작은 최대의 정수가 유효한 최대의 수가 된다.Lmax, BAG, Lmax ', and BAG' are only valid integers. At this time, when BAG 'is already determined and a new Lmax' is determined accordingly, Lmax 'is calculated by Equation 1. At this time, when Lmax 'is already determined and a new BAG' is determined accordingly, BAG 'is obtained by Equation 1. At this time, when BAG 'is not an integer, the largest integer smaller than that number is the maximum valid number.
변환부(310)에서 Lmax'의 결정은 네트워크에서 요구되는 종단 간 지연시간과, 스위치 내의 최대버퍼 용량을 고려하여 수행됨이 바람직하다. Determination of Lmax 'in the converter 310 is preferably performed in consideration of the end-to-end delay time required in the network and the maximum buffer capacity in the switch.
즉, 엔드 시스템을 포함한 네트워크 내 각 스위치의 최대버퍼 용량보다 작게 Lmax'를 결정하되, 허용 가능한 종간 간 지연시간을 충족할 수 있는 네트워크 동작이 가능한 Lmax'를 반복적 시도를 통해 찾아서 가장 적절한 값이 결정된다. In other words, Lmax 'is determined to be smaller than the maximum buffer capacity of each switch in the network including the end system, but the most appropriate value is determined through iterative attempts to find Lmax' which is capable of network operation that can satisfy the allowable inter-delay. do.
Lmax'가 결정되면, 전술한 수학식 1에 따라 BAG'가 결정되고, 상기 Lmax' 및 BAG'에 따라 엔드 시스템의 가상링크 파라미터를 조정하여 엔드 시스템으로부터 프레임을 Lmax'를 BAG에 맞추어 단편화하여 전송한다. When Lmax 'is determined, BAG' is determined according to Equation 1 described above, and the virtual link parameters of the end system are adjusted according to Lmax 'and BAG' to fragment the frame from the end system according to Lmax 'and transmit the fragmented Lmax' to BAG. do.
한편, AFDX 네트워크 표준 (ARINC664)에 따르면 BAG의 단위는 ms이다. 그러나 개발자에 따라서 이보다 더 정밀한 단위를 사용할 수 있다.Meanwhile, according to the AFDX network standard (ARINC664), the unit of BAG is ms. However, some developers can use more precise units.
- 변환부 - -Converter-
도 3은 본 발명의 실시 예에 따라 제1에지 스위치(300)에 포함된 변환부(310)의 구성도이다. 변환부(310)는 변환 테이블을 기초로 각 가상 링크의 BAG 및 Lmax를 변환시킨다. 3 is a block diagram of the conversion unit 310 included in the first edge switch 300 according to an embodiment of the present invention. The conversion unit 310 converts the BAG and Lmax of each virtual link based on the conversion table.
보다 구체적으로, 변환부(310)는 수학식 1을 이용하여 변환 테이블을 작성하고 가상 링크의 설정 변환을 수행한다.More specifically, the conversion unit 310 creates a conversion table using Equation 1 and performs setting conversion of the virtual link.
변환부(310)는 프레임 버퍼(312), 스케줄러(314), 프레임 전송부(316) 및 BAG 타이머(318)를 포함한다.The converter 310 includes a frame buffer 312, a scheduler 314, a frame transmitter 316, and a BAG timer 318.
구체적으로, 프레임 버퍼(312)는 전송되지 않고 남은 프레임을 저장한다. 즉, 프레임 버퍼(312)는 단편화를 위해서 쪼개고 전송되지 않고 남은 프레임을 저장한다. In detail, the frame buffer 312 stores a frame remaining without being transmitted. That is, the frame buffer 312 stores the remaining frames that are not split and transmitted for fragmentation.
스케쥴러(314)는 변환 테이블을 기초로 프레임 페이로드 중 첫 번째 단편을 전송하고 프레임 중 나머지 부분은 프레임 버퍼(312)에 저장한 후 변환된 BAG에 맞추어 후속의 단편을 순차적으로 전송하도록 제어한다. The scheduler 314 transmits the first fragment of the frame payload based on the conversion table, stores the remaining portion of the frame in the frame buffer 312, and controls to sequentially transmit subsequent fragments in accordance with the converted BAG.
프레임 전송부(316)는 스케쥴러(314)로부터 제어 신호에 응답하여 변환 테이블에 대응하는 단편화된 프레임을 전송한다. The frame transmitter 316 transmits a fragmented frame corresponding to the conversion table in response to the control signal from the scheduler 314.
또한, 스케쥴러(314)는 BAG 타이머(318)가 만료되는 시점에 변환 테이블에 대응하는 후속의 단편을 순차적으로 전송하도록 제어한다.In addition, the scheduler 314 controls to sequentially transmit subsequent fragments corresponding to the conversion table at the time when the BAG timer 318 expires.
구체적으로, 프레이머(미도시)는 새롭게 쪼개진 이더넷 페이로드에 이전과 동일한 헤더를 구성하여 프레임을 생성하고 새로운 시퀀스 번호를 붙인다. 프레임 개수가 단편화에 의해 늘어가기 때문에 새롭게 시퀀스 번호를 관리해야 한다. Specifically, the framer (not shown) configures the same header to the newly split Ethernet payload to generate a frame and attaches a new sequence number. Since the number of frames increases due to fragmentation, a new sequence number must be managed.
각 가상 링크 별로 시퀀스 번호 카운터가 8비트 카운터로 사용된다. BAG 크기의 비율에 비례하여 시퀀스 카운팅 속도도 증가한다. For each virtual link, a sequence number counter is used as an 8-bit counter. The sequence counting speed also increases in proportion to the ratio of the BAG size.
도 4는 프레임 버퍼부(312)의 내부 구조를 개념적으로 도시한 것이다. Lmax에 헤더 등을 포함한 최대 프레임 길이를 저장할 수 있는 영역이 각 가상 링크마다 준비되어 있다. 그리고 ES로부터 프레임이 도착하면 버퍼에 저장한다. 4 conceptually illustrates an internal structure of the frame buffer unit 312. In Lmax, an area for storing the maximum frame length including the header and the like is prepared for each virtual link. When a frame arrives from the ES, it is stored in a buffer.
이어, 앞 부분에 해당하는 단편화된 프레임을 새로운 헤더와 시퀀스 번호, FCS를 붙여서 전송한다. Subsequently, the fragmented frame corresponding to the first part is transmitted with a new header, a sequence number, and an FCS.
도 4와 같이 이미 보낸 부분이 메모리에 저장되어 있는 구조로 구현이 가능하고, 이미 보낸 단편의 데이터는 메모리에 저장하지 않는 구조로도 구현이 가능하다. As shown in FIG. 4, it is possible to implement a structure in which the already sent part is stored in the memory, and the data of the already sent fragment can be implemented in a structure not stored in the memory.
만약 후자의 경우, FIFO 형태로 구현될 것이고, 내부 메모리에는 아직 보내지 않은 단편의 데이터만 저장된다. 프레임 버퍼부(122)에 저장된 데이터는 ES로부터 다음 프레임이 도착하기 전까지 모두 전송되어야 한다. 그러므로, 프레임If it is the latter, it will be implemented in FIFO form, and only the fragment data which is not sent yet is stored in internal memory. All data stored in the frame buffer 122 must be transmitted until the next frame arrives from the ES. Therefore, the frame
버퍼부(312)의 크기는 가상 링크 별로 최대 크기의 프레임 1개를 저장할 수 있는 공간이면 충분하다. The size of the buffer unit 312 is sufficient to store one frame of the maximum size for each virtual link.
도 4는 가상 링크가 n개인 경우를 도시한 도면으로, 도 4에서는 제1가상 링크의 경우 Lmax가 1/2배가 되었고, 제2가상 링크의 경우 1/4배가 되었으며, 제3가상 링크의 경우 1/8배가 된 경우를 도시하였다. 제1가상 링크, 제2가상 링크, 제3가상 링크에서 변환 후 Lmax값이 서로 다르기 때문에 최초에 전송되는 프레임의 길이는 각각 다르다. FIG. 4 is a diagram illustrating a case where n virtual links are shown. In FIG. 4, Lmax is 1/2 times for the first virtual link, 1/4 times for the second virtual link, and 3 times for the third virtual link. The case where it became 1/8 times was shown. Since the Lmax values after conversion in the first virtual link, the second virtual link, and the third virtual link are different from each other, the lengths of the first transmitted frames are different.
물론 이것은 새로운 Lmax값이 Lmax'보다 긴 프레임이 도착한 경우에 한한다. Of course, this is only when a frame with a new Lmax value longer than Lmax 'arrives.
만약 Lmax'보다 짧은 프레임이 도착한 경우라면 단편화없이 즉, 버퍼링 없이 헤더 변환만 처리하고 전달될 것이기 때문이다. If a frame shorter than Lmax 'arrives, only the header transformation will be processed and delivered without fragmentation, that is, without buffering.
구체적으로, 제3가상 링크에서는 Lmax 길이가 짧은 대신에 제2가상 링크보다도 자주 프레임을 전송한다. 도 4에서는 각 가상 링크별 BAG에 관한 설정은 도시되지 않았는데, 이것은 제2가상 링크와 제3가상 링크의 BAG이 서로 같은 경우로 볼 수 있다. Specifically, in the third virtual link, instead of having a shorter Lmax length, frames are transmitted more frequently than the second virtual link. In FIG. 4, the configuration of the BAG for each virtual link is not shown. This may be considered to be the case where the BAGs of the second virtual link and the third virtual link are the same.
만약 제3가상 링크의 BAG이 제2가상 링크의 BAG보다 1/8배인 경우라면 Lmax를 1/2배 설정하더라도 프레임을 더 자주 보내지 않게 된다. If the BAG of the third virtual link is 1/8 times larger than the BAG of the second virtual link, even if Lmax is set to 1/2 times, frames are not sent more often.
도 5는 본 발명의 실시 예에 따른 다른 시각에서 본 프레임 버퍼를 도시한 도면이다. 도 5에 도시된 바와 같이, 기준 시점이 제2가상 링크의 변환된 첫번째 BAG'이 만료되는 시점에서 제2가상 링크의 두 번째 단편 프레임이 전송된다. 5 is a diagram illustrating a frame buffer viewed from another viewpoint according to an embodiment of the present invention. As shown in Fig. 5, the second fragment frame of the second virtual link is transmitted when the reference time point expires of the converted first BAG 'of the second virtual link.
이때, 제3가상 링크의 경우 이미 두 번째 단편 프레임 전송을 마쳤고, 세 번째 단편 프레임을 전송한다. In this case, the third virtual link has already finished transmitting the second fragment frame, and transmits the third fragment frame.
도 5에서 좌우의 화살표는 프레임을 의미하는데, 왼쪽은 제1에지 스위치(110)에서 입력되는 프레임이다. 하나의 프레임이 수신되고 이것이 단편화되어 오른쪽 화살표처럼 쪼개어 여러 번 전송된다. In FIG. 5, the left and right arrows indicate a frame, and the left side is a frame input from the first edge switch 110. One frame is received, which is fragmented and split several times, like the right arrow.
- 가상 링크에 대한 정보 --Information about the virtual link-
변환 테이블 내의 가상 링크에 대한 정보는 변환 전 정보(Config#1)와 변환 후 정보(Config#2)로 구성된다. 프레임이 제1에지 스위치(300)의 입력 포트로 도착하면 우선 기존 AFDX MAC에서처럼 Integrity Check를 통한 Filtering과 Policing을 수행한다. Integrity Check는 프레임의 유효성을 확인하는 과정이다. 프레임의 유효성 확인은 헤더 내의 상수 값 확인, FCS 오류 확인, 프레임 길이가 최소 길이보다 짧은지 최대 길이 Lmax보다 긴지 여부 확인 등을 포함한다. The information on the virtual link in the conversion table is composed of information before conversion (Config # 1) and information after conversion (Config # 2). When the frame arrives at the input port of the first edge switch 300, first, filtering and Policing through Integrity Check are performed as in the conventional AFDX MAC. Integrity Check is the process of checking the validity of a frame. Validation of the frame includes checking constant values in the header, checking for FCS errors, checking whether the frame length is shorter than the minimum length or longer than the maximum length Lmax.
Policing에서는 프레임이 올바른 것이 확인되면 변환 전 가상 링크 설정대로 도착했는지를 검사한다. BAG 간격보다 이전에 입력되면 그 프레임을 무시한다. ARINC 664 Part 7 규격 4.0 Switch Specification 장에 따르면 스위치에서의 Policing은 token bucket 알고리즘을 기본으로 동작한다.Policing checks to see if the frame is valid and arrives at the virtual link settings before conversion. If entered before the BAG interval, the frame is ignored. According to the ARINC 664 Part 7 Specification 4.0 Switch Specification chapter, Policing on a switch is based on the token bucket algorithm.
이렇게 통과된 프레임 중 변환이 필요한 경우, 변환부(310)로 들어간다. 변환 테이블에 변환 정보가 없는 가상 링크인 경우에는 변환부(310)를 거치지 않고 Policing에서 리던던트 모듈(미도시)로 바로 전달되어 다른 스위치로 전송되도록 한다.If conversion is required among the frames passed in this way, it enters the conversion unit 310. In the case of a virtual link having no translation information in the translation table, it is directly transmitted to the redundant module (not shown) from Policing without passing through the conversion unit 310 to be transmitted to another switch.
- 변환 테이블 --Conversion table-
도 6은 본 발명의 실시 예에 따른 변환 테이블을 예시한 도면이다. 도 6에 도시된 바와 같이, 제1에지 스위치(300)에서는 변환 테이블이 있다. 변환이 필요한 가상 링크가 n개일 때, n개의 가상 링크 변환 정보가 있다. Config#2(변환 후)에 위치한 값들은 수학식 1 조건을 만족한다. 6 is a diagram illustrating a conversion table according to an embodiment of the present invention. As shown in FIG. 6, the first edge switch 300 has a conversion table. When n virtual links need translation, there are n virtual link translation information. The values located in Config # 2 (after conversion) satisfy the condition of Equation 1.
예를 들어, BAG가 8 ms 이고 Lmax가 1499바이트인 Config#1(변환 전)의 가상 링크가 Config#2로 변환되는데, BAG가 4 ms에 Lmax 750바이트로 변환된다. 1499바이트를 BAG 변동폭만큼 나누면 749.5의 값을 갖는데 이 값보다 큰 최소의 정수는 750이다. For example, a virtual link of Config # 1 (before conversion) with a BAG of 8 ms and an Lmax of 1499 bytes is converted to Config # 2, which translates into a Bmax of 750 bytes at 4 ms. Dividing 1499 bytes by the BAG variation has a value of 749.5, with a minimum integer greater than this value being 750.
가상 링크 ID가 3인 경우에는 BAG가 1로 줄어들며 전송 빈도를 늘였을 때의 수학식 1에 따라 Lmax'가 187.375 바이트가 나온다. 따라서 새로운 Config#2로 Lmax'는 187.375보다 큰 최소의 정수인 188 바이트로 결정된다. When the virtual link ID is 3, the BAG is reduced to 1 and Lmax 'is 187.375 bytes according to Equation 1 when the transmission frequency is increased. So with the new Config # 2, Lmax 'is determined to be 188 bytes, the smallest integer greater than 187.375.
3가지 가상 링크가 있으며 각각 서로 다르게 단편화된다. 단편화될 때에는 새로운 Lmax와 BAG의 값은 수학식 1을 이용하여 결정된다.There are three virtual links, each fragmented differently. When fragmented, the values of new Lmax and BAG are determined using Equation 1.
도 7은 본 발명의 실시 예에 따른 제2에지 스위치(500)의 재조립부(510)의 구성도이다. 도 7에 도시한 바와 같이, 제2에지 스위치(500)는 전송 프레임의 목적지인 제3엔드 시스템(600)의 바로 앞에 있는 스위치로서, 수학식1을 이용하여 수신한 프레임 유효 여부를 판단한다. 재조립부(510)는 재조립 메모리(512), 재조립 제어부(514), 프레임 전송부(516) 및 프레이머(518)를 포함한다. 7 is a configuration diagram of the reassembly unit 510 of the second edge switch 500 according to an embodiment of the present invention. As shown in FIG. 7, the second edge switch 500 is a switch directly in front of the third end system 600 which is a destination of the transmission frame. The second edge switch 500 determines whether the received frame is valid using Equation (1). The reassembly unit 510 includes a reassembly memory 512, a reassembly control unit 514, a frame transmission unit 516, and a framer 518.
보다 구체적으로, 재조립 메모리(512)는 수신한 프레임이 유효한 경우 프레임의 페이로드만 저장한다. More specifically, the reassembly memory 512 stores only the payload of the frame when the received frame is valid.
재조립 제어부(514)는 프레임 시퀀스 번호를 저장하고 프레임 시퀀스 번호 오류 여부를 확인한다. The reassembly control unit 514 stores the frame sequence number and checks whether the frame sequence number is an error.
프레임 전송부(516)는 저장된 프레임이 완성된 페이로드가 되는지 확인하고 완성된 페이로드를 프레이머(518)로 전달한다. The frame transmitter 516 checks whether the stored frame is a complete payload and transfers the completed payload to the framer 518.
프레이머(518)는 프레임 전송부(516)로부터 수신한 페이로드에 변환 테이블의 Config#1에 부합하는 변환 전 헤더, 시퀀스 번호 및 FCS를 부착하여 프레임을 완성하고 전송한다. The framer 518 completes and transmits the frame by attaching a pre-conversion header, a sequence number, and an FCS corresponding to Config # 1 of the conversion table to the payload received from the frame transmitter 516.
도 8은 본 발명의 실시 예에 따른 재조립을 수행하는 제2에지 스위치(500)에서 재조립 메모리(512)에 변환 프레임이 축적되어 가는 양태를 도시한 개념도이다. 8 is a conceptual diagram illustrating a mode in which a conversion frame is accumulated in the reassembly memory 512 in the second edge switch 500 performing reassembly according to an embodiment of the present invention.
수신되는 프레임은 도 8과 같이 재조립 메모리(512)에 페이로드만 쌓는다. The received frame accumulates only the payload in the reassembly memory 512 as shown in FIG. 8.
- 페이로드 재조립이 완료된 상황 --Payload Reassembly Completed-
도 9는 본 발명의 실시 예에 따른 페이로드 재조립이 완료된 상황을 도시한 도면이다. 완성된 프레임의 페이로드에 헤더와 시퀀스 번호, FCS 등의 정보가 추가되어 이더넷 프레임으로 만들어지고 엔드 스위치로 전달된다. 이때, 단편화 과정과 같이 시퀀스 번호는 복원되어 부여된다. 9 is a view illustrating a situation in which payload reassembly is completed according to an embodiment of the present invention. The header, sequence number, and FCS are added to the payload of the completed frame to make it into an Ethernet frame and delivered to the end switch. At this time, the sequence number is restored and assigned as in the fragmentation process.
- 프레임을 재조립하는 경우 --When reassembling the frame-
도 10은 본 발명의 실시 예에 따른 프레임 재조립하는 과정을 도시한 도면이다. 제2에지 스위치(500)는 변환 후 정보(Config #2)에 따라 Integrity와 Policing 검사를 행하여 수신한 프레임의 유효성을 확인한다. 수신한 프레임이 유효한 프레임인 경우, 재조립 메모리(512)에 페이로드만 저장한다. 그리고, 재조립 제어부(514)가 수신한 프레임의 시퀀스 번호를 SEQ 메모리(미도시)에 저장하고 매 수신 프레임마다 시퀀스 번호 오류가 없는지 확인한다. 10 is a view illustrating a frame reassembly process according to an embodiment of the present invention. The second edge switch 500 checks the validity of the received frame by performing Integrity and Policing checks according to the information (Config # 2) after the conversion. If the received frame is a valid frame, only the payload is stored in the reassembly memory 512. Then, the reassembly control unit 514 stores the sequence number of the received frame in the SEQ memory (not shown) and checks whether there is no sequence number error in every received frame.
오류 없이 모두 도착한 단편화된 프레임이 완성된 페이로드가 되면 프레임 전송부(516)가 재조립 메모리(512)에서 읽어 프레이머(518)로 전달한다. 프레이머(518)는 전달받은 페이로드에 변환전 정보(Config#1)에 맞는 헤더와 시퀀스번호, FCS을 붙여 이더넷 프레임을 전송한다. When all fragmented frames arrive without error, the frame payer 516 reads from the reassembled memory 512 and transfers them to the framer 518. The framer 518 transmits an Ethernet frame by attaching a header, a sequence number, and an FCS that match the pre-conversion information (Config # 1) to the received payload.
FCS(Frame Check Sequence)는 SFD 다음 Frame들의 비트열에서 오류 발생을 검사하는 기능을 수행한다.The Frame Check Sequence (FCS) checks the occurrence of an error in the bit string of the frames following the SFD.
제2에지 스위치(500)는 프레임을 재조립하여 제3엔드 시스템(600)에게 전달하면 송신 엔드 시스템인 제1 및 제2엔드 시스템(100, 200)과 동일한 가상 링크 설정으로 프레임을 교환할 수 있다.When the second edge switch 500 reassembles the frame and delivers the frame to the third end system 600, the second edge switch 500 may exchange the frame with the same virtual link setup as the first and second end systems 100 and 200, which are transmission end systems. have.
만약 제3엔드 시스템(600)에서 Config#2로 설정되어 있고, 재조립하는 에지 스위치가 없는 경우라면 기존의 AFDX 프레임의 수신 과정과 동일하게 제3엔드 시스템(600)이 변환된 프레임을 수신한다. If the third end system 600 is set to Config # 2 and there is no edge switch to be reassembled, the third end system 600 receives the converted frame in the same manner as the receiving process of the existing AFDX frame. .
- 제3엔드 시스템(600)에서 프레임을 재조립하는 경우 -When reassembling the frame in the third-end system 600
한편, 다른 실시 예로서, 단편화된 프레임의 재조립은 제2에지 스위치(500)가 아닌 프레임의 최종 목적지인 제3엔드 시스템(600)에서 이루어질 수도 있다.In another embodiment, the reassembly of the fragmented frame may be performed in the third end system 600 which is the final destination of the frame instead of the second edge switch 500.
이를 위하여 제3엔드 시스템(600)은 재조립부(510)와 동일 기능을 수행하는 재조립부(610)를 포함한다. To this end, the third end system 600 includes a reassembly unit 610 that performs the same function as the reassembly unit 510.
도 11은 본 발명의 일 실시 예에 따라 제2에지 스위치(500)에서 프레임을 재조립하는 것을 도시한 도면이고, 도 12는 본 발명의 다른 일 실시 예에 따른 제3엔드 시스템(600)에서 프레임을 재조립하는 것을 도시한 도면이다. FIG. 11 is a view illustrating reassembly of a frame at a second edge switch 500 according to an embodiment of the present invention, and FIG. 12 is a view illustrating a third end system 600 according to another embodiment of the present invention. A diagram illustrating reassembly of a frame.
도 11의 제1에지 스위치(300)는 빗금친 프레임을 수신하여 2개로 단편화해 2번 전송하여 코어 스위치(400)에 전달한다. 그리고 코어 스위치(400)는 단편화된 빗금친 프레임을 제2에지 스위치(500)까지 기존 AFDX 네트워크 규격대로 전달한다. 제2에지 스위치(500)에서는 빗금친 단편화된 프레임을 재조립하여 엔드 시스템(미도시)으로 전달한다. The first edge switch 300 of FIG. 11 receives the hatched frame, fragments it into two pieces, and transmits the same to the core switch 400. The core switch 400 delivers the fragmented hatched frame to the second edge switch 500 according to the existing AFDX network standard. The second edge switch 500 reassembles the hatched fragmented frame and delivers it to the end system (not shown).
가는 테두리 프레임의 경우에는 단편화 과정이 없이 전달된다. 굵은 테두리 프레임은 코어 스위치(410)의 입력포트로 입력된 후 단편화되어 2번 나누어 제2에지 스위치(500)에 전달되고 이를 재조립하여 제3엔드 시스템(600)으로 전달된다. In the case of a thin border frame, it is delivered without fragmentation. The thick frame is input to the input port of the core switch 410 and then divided into two parts and delivered to the second edge switch 500, and then reassembled and delivered to the third end system 600.
위 두 실시 예에서는, 최종단에서 수신하는 방법이 다르다. 도 11에 도시된 실시 예에서는 제2에지 스위치(500)가 프레임 재조립을 수행하고 완성된 프레임을 제3엔드 시스템(600)에게 전달한다. In the above two embodiments, the method of receiving at the last stage is different. In the embodiment illustrated in FIG. 11, the second edge switch 500 performs frame reassembly and delivers the completed frame to the third end system 600.
도 12에 도시된 실시 예에서는 제2에지 스위치(500)는 수신한 대로 전송하고, 제3엔드 시스템(600)이 프레임 재조립을 수행한다. In the embodiment illustrated in FIG. 12, the second edge switch 500 transmits as received, and the third end system 600 performs frame reassembly.
그러므로, 두 가지 경우에 따라 제2에지 스위치(500)와 제3엔드 시스템(600)에서의 설정이 다르게 된다.Therefore, the settings in the second edge switch 500 and the third end system 600 are different according to the two cases.
도 11에서는, 제3엔드 시스템(600)은 제1엔드 시스템(100), 제2엔드 시스템(200)과 동일한 BAG, Lmax를 갖는다. 각 엔드 시스템은 단편화 과정을 알 수 없다. In FIG. 11, the third end system 600 has the same BAG and Lmax as the first end system 100 and the second end system 200. Each end system does not know the fragmentation process.
도 12에서는, 제3엔드 시스템(600)에 제1에지 스위치(300), 코어 스위치 S1(400), 코어 스위치 S2(410), 제2에지 스위치(500)에 설정되어 있는 새로운 가상 링크 설정 값과 같은 값이 설정되어 있다. 특별하게 재조립하여 원래의 설정대로 전송하는 과정은 필요하지 않다. 따라서, 도 12는 도 11의 경우보다 네트워크 설정이 더 간소하다. 그러나 엔드 스위치 간 또는 엔드 시스템 간에 BAG, Lmax설정이 맞지 않아 유지 관리시에 혼동을 줄 우려가 있다. In FIG. 12, new virtual link setting values set in the first edge switch 300, the core switch S1 400, the core switch S2 410, and the second edge switch 500 in the third end system 600. The same value is set. No special reassembly and transfer to the original configuration is necessary. Thus, FIG. 12 is simpler in network configuration than in FIG. However, the BAG and Lmax settings do not match between end switches or end systems, which may cause confusion during maintenance.
예컨대 굵은 테두리 프레임을 전송하는 가상 링크의 경우 ES#3의 가상 링크 설정과 ES#8의 동일한 프레임이 해당하는 가상 링크의 설정이 서로 다르게 된다. 따라서 실질적으로 같은 프레임인데도 가상 링크 설정이 다른 경우가 발생할 수 있다. For example, in the case of a virtual link transmitting a thick border frame, the virtual link configuration of ES # 3 and the virtual frame corresponding to the same frame of ES # 8 are different. Therefore, the virtual link configuration may be different even though the frame is substantially the same.
도 13은 일반 이더넷 프레임 구조를 도시한 도면이고 도 14는 AFDX 이더넷 프레임 구조를 도시한 도면이다. AFDX 이더넷 프레임은 일반 프레임과 달리 시퀀스 번호가 저장되는 1바이트 공간이 FCS(Frame Check Sequence) 앞에 위치한다.FIG. 13 illustrates a general Ethernet frame structure and FIG. 14 illustrates an AFDX Ethernet frame structure. Unlike general frame, AFDX Ethernet frame has 1 byte space where sequence number is stored before FCS (Frame Check Sequence).
시퀀스 번호 영역 때문에 페이로드를 일반 이더넷 프레임보다 1바이트 적게 보낼 수 있다. 일반 프레임에서는 최대 1500 바이트를 전송할 수 있지만, AFDX에서는 1바이트 적은 1499 바이트를 페이로드를 최대로 전송할 수 있다.Because of the sequence number field, payload can be sent one byte less than a regular Ethernet frame. In normal frames, up to 1500 bytes can be transmitted, while AFDX can deliver up to 1499 bytes in one payload.
그리고 이더넷에서는 점보 프레임이라는 9000 바이트까지 큰 프레임이 존재한다. 그러나, 프레임 구조가 변경되는 것이 아니라 이더넷 페이로드가 커지는 것이어서 본 특허의 내용을 점보 프레임에 용이하게 적용할 수 있다. And in Ethernet, there are frames up to 9000 bytes called jumbo frames. However, the frame structure is not changed, but the Ethernet payload is increased, so that the contents of the present patent can be easily applied to jumbo frames.
프레임 간에는 Interframe spacing(IFS)라는 96비트의 빈 공간이 존재한다. 이는 프레임을 송/수신하는데 필요한 기술적인 지연 시간을 고려하여 마련된 것이다. There is a 96-bit empty space called interframe spacing (IFS) between frames. This is made in consideration of the technical delay time required for transmitting / receiving a frame.
도 15는 본 발명의 실시 예에 따른 BAG, Lmax를 변화한 경우 프레임 전송을 도시한 도면이다. 도 15에 도시된 바와 같이, BAG가 2배 빨라지고(값은 1/2배가 되고), Lmax가 1/2배 만큼 짧아진 경우의 프레임 전송 모습을 도시한다. 15 is a diagram illustrating frame transmission when BAG and Lmax are changed according to an embodiment of the present invention. As shown in Fig. 15, the frame transmission is shown when the BAG is twice as fast (value is 1/2 times) and Lmax is shortened by 1/2 times.
실제로 단편화로 인해서 사용되는 전체 트래픽의 양이 증가한다. 추가된 헤더, FCS IFS 등 때문이다. AFDX 설정을 결정하는 엔지니어는 변환 테이블을 생성할 때 증가된 트래픽의 양을 고려하여 변환 테이블의 각 값들을 결정해야 할 것이다. In fact, fragmentation increases the total amount of traffic used. Added headers, FCS IFS, etc. The engineer who decides to set up the AFDX will need to determine each value in the translation table, taking into account the increased amount of traffic when creating the translation table.
프레임 페이로드의 마지막에는 1바이트의 시퀀스 번호가 붙는다. 가상 링크 별로 독립적으로 관리되는 번호로 0부터 255까지의 값을 갖고 초기값은 0으로 시작한다. 그리고 255가 되면 1로 변해 순환한다. 송신측에서 시퀀스 번호를 초기화시키고 싶을 경우에는 0을 실어 전송한다. 수신단은 0번의 시퀀스 번호를 수신한 경우, 수신단은 송신측의 시퀀스 번호 초기화로 판단하고 시퀀스 번호를 초기화한다. At the end of the frame payload is a sequence number of 1 byte. It is a number managed independently for each virtual link. It has a value from 0 to 255. The initial value starts with 0. And when it reaches 255, it turns to 1 and cycles. When the sender wants to initialize the sequence number, 0 is transmitted. When the receiving end receives the sequence number of 0, the receiving end judges the sequence number initialization on the transmitting side and initializes the sequence number.
단편화, 재조립 과정에서 프레임의 개수가 바뀌어서 시퀀스 번호의 운영에 차이가 발생한다. Config#1으로 설정된 가상 링크보다 Config#2의 가상 링크에서 더 자주 프레임을 전송한다.In the fragmentation and reassembly process, the number of frames is changed, resulting in a difference in the operation of the sequence number. Frames are sent more frequently on the virtual link in Config # 2 than the virtual link set in Config # 1.
또한, Lmax가 Lmax'보다 2배 길지만 실제 전송에 실리는 페이로드가 Lmax의 절반 미만일 경우에는 단편화 과정이 발생하지 않는다. 이럴 경우에는 시퀀스 번호는 변환 전 또는 변환 후 모두 동일하다. In addition, if Lmax is twice as long as Lmax 'but the payload carried in actual transmission is less than half of Lmax, fragmentation does not occur. In this case, the sequence number is the same before or after the conversion.
그러나, Lmax의 절반 크기 초과의 페이로드를 실어 전송하는 경우가 한 번이라도 발생하면, 그때부터 시퀀스 번호는 달라지게 된다. However, if a case in which a payload larger than half the size of Lmax is transmitted at least once occurs, the sequence number is changed from that time.
제1에지 스위치(300)에서 시퀀스 번호가 0으로 된 프레임을 수신하는 경우, 단편화된 프레임 시퀀스 번호도 0부터 다시 시작한다. 재조립을 하는 과정에서도 첫번째 단편화된 프레임 시퀀스 번호가 0이면 재조립된 프레임의 시퀀스 번호도 0으로 초기화된다. When the first edge switch 300 receives a frame having a sequence number of 0, the fragmented frame sequence number also starts again from zero. Even during the reassembly process, if the first fragmented frame sequence number is zero, the sequence number of the reassembled frame is also initialized to zero.
IP(Internet Protocol)의 경우 Fragmentation을 위해서 ID(Identification)필드와 More 필드를 사용한다. 동일한 ID값을 갖는 패킷들은 단편화되었음을 의미하고 마지막 단편화된 패킷 여부는 More필드 값으로 확인한다. In case of IP (Internet Protocol), ID (Identification) field and More field are used for fragmentation. Packets with the same ID value indicate fragmentation, and whether or not the last fragmented packet is confirmed by the value of the More field.
하지만, AFDX 프레임에는 IP처럼 단편화를 위해서 별도의 필드를 제공하지 않는다. However, AFDX frames do not provide a separate field for fragmentation like IP.
AFDX는 확정적(Deterministic) QoS를 보장하기 위해 네트워크 프로파일링에 따른 BAG와 Lmax에 따라서 확정적으로(Deterministic) 동작한다.AFDX operates deterministicly according to BAG and Lmax according to network profiling to ensure deterministic QoS.
- 프레임의 재조립 완료 동작 논리 -Frame reassembly completion operation logic
BAG_a : 변환 전의 BAGBAG_a: BAG before conversion
BAG_b : 변환 후의 BAGBAG_b: BAG after conversion
Lmax_a : 변환 전의 LmaxLmax_a: Lmax before conversion
Lmax_b : 변환 후의 LmaxLmax_b: Lmax after conversion
T1 : 첫 번째 단편화 프레임이 도착한 시각T1: time when the first fragmented frame arrived
Tc : 현재 수신된 단편화 프레임이 도착한 시각Tc: The time when the currently received fragmented frame arrived
N : 현재까지 수신한 단편화 프레임의 개수N: Number of fragmented frames received so far
DIFF_BAG : BAG_a / BAG_b의 값 이상의 최소의 정수값, 1보다 큰 값이다.DIFF_BAG: The minimum integer value greater than or equal to BAG_a / BAG_b, which is greater than 1.
프레임이 도착할 때마다 아래의 동작을 수행한다.Whenever a frame arrives,
먼저, BAG_a 시간이 경과했는지를 검사한다. 만약 경과한 경우, 단편화 프레임이 더 이상 도착할 수 없다. First, it is checked whether the BAG_a time has elapsed. If so, the fragmented frame can no longer arrive.
BAG_a 시간이 경과하고 이후에 도착한 프레임은 새로운 프레임이기 때문이다. This is because the frame arrived after the BAG_a time has elapsed is a new frame.
Tc - T1이 BAG_a 이상인 경우, 제2에지 스위치(500)는 이전에 수신되어 재조립된 프레임의 개수는 DIFF_BAG 미만이지만 재조립된 데이터는 완성된 것으로 간주한다. 이러한 경우, 제2에지 스위치(500)는 프레임을 프레이머로 전달한다.If Tc-T1 is greater than or equal to BAG_a, the second edge switch 500 considers that the number of previously received and reassembled frames is less than DIFF_BAG but the reassembled data is complete. In this case, the second edge switch 500 transfers the frame to the framer.
그리고, 시퀀스 번호 N을 0으로 초기화한다. 또한, 현재 수신한 단편화된 프레임은 첫 번째 단편화 프레임이 되고, 단편화된 프레임을 재조립 메모리 제일 앞 부분에 보관한다.The sequence number N is initialized to zero. In addition, the currently received fragmented frame becomes the first fragmented frame, and stores the fragmented frame in the front part of the reassembly memory.
다음으로, 현재 수신한 시퀀스 번호가 0이면 함께 초기화하고, 그렇지 않으면 1을 증가시킨다. 255이면 1로 변경한다. Next, if the currently received sequence number is 0, it is initialized together, otherwise it is incremented by 1. If it is 255, change it to 1.
후속 프레임이 아직 BAG_a 시간이 경과하지 않고 도착한 경우에는, 추가 단편화 프레임이 도착한 것일 수 있다.If a subsequent frame arrives without the BAG_a time yet, an additional fragmented frame may have arrived.
따라서, 이하의 1) 내지 4)의 조건에 따라 재조립 과정을 수행한다.Therefore, the reassembly process is performed according to the following conditions 1) to 4).
1) N+1이 DIFF_BAG 과 동일한 경우에는 제2에지 스위치(500)는 마지막 단편화 프레임이 도착한 것으로 확인한다. 즉, 이전에 수신되어 재조립되고 있던 프레임이 완성된 것이다. 제2에지 스위치(500)는 완성된 프레임을 프레이머로 전달하고, N을 0으로 초기화한다. N이 0인 경우에는, 현재 수신한 단편화된 프레임은 첫 번째 단편화 프레임이 된다. 1) If N + 1 is equal to DIFF_BAG, the second edge switch 500 confirms that the last fragmented frame has arrived. That is, the frame that was previously received and reassembled is completed. The second edge switch 500 transfers the completed frame to the framer and initializes N to zero. If N is 0, the currently received fragmented frame becomes the first fragmented frame.
2) 제2에지 스위치(500)는 수신된 프레임을 재조립 메모리 제일 앞 부분에 보관한다. 현재 수신한 시퀀스 번호가 0이면 함께 초기화하고, 그렇지 않으면 1을 증가시킨다. 시퀀스 번호가 계속 증가하여 255인 경우에는 1로 변경한다. 2) The second edge switch 500 stores the received frame in the front part of the reassembly memory. If the currently received sequence number is 0, it is initialized together. Otherwise, it is increased. If the sequence number is continuously increased to 255, change it to 1.
3) N+1이 DIFF_BAG THEN 미만인 경우에는, 제2에지 스위치(500)는 현재 수신한 단편화된 프레임이 마지막인지 알 수 없다. 따라서 제2에지 스위치(500)는 프레임을 재조립 메모리에 이어서 붙여 보관한다. 3) When N + 1 is less than DIFF_BAG THEN, the second edge switch 500 may not know whether the currently received fragmented frame is the last. Accordingly, the second edge switch 500 attaches and stores the frame to the reassembly memory.
4) 위 1) 내지 3)에 해당하지 않으면, 제2에지 스위치(500)는 오류 상황으로 판단한다. 4) If the above 1) to 3) does not correspond, the second edge switch 500 is determined to be an error situation.
도 15는 본 발명의 실시 예에 따른 AFDX 네트워크 성능 개선 방법의 순서도이다.15 is a flowchart illustrating a method for improving AFDX network performance according to an embodiment of the present invention.
도 15에 도시된 바와 같이, 먼저, 제1에지 스위치(300)는 송신 엔드 시스템으로부터 적어도 하나의 가상 링크를 통하여 프레임을 수신한다(S310).As shown in FIG. 15, first, the first edge switch 300 receives a frame from at least one virtual link from a transmission end system (S310).
다음으로, 수신한 프레임을 변환 테이블을 기초로 단편하여 전송한다(S320). 구체적으로 변환부(310)는 변환 테이블을 기초로 각 가상 링크의 BAG 및 Lmax를 변환한다. 이 경우, 변환부(310)는 수학식 1을 이용하여, 변환 테이블을 작성하고 가상 링크 변환을 수행한다.Next, the received frame is fragmented based on the conversion table and transmitted (S320). In detail, the conversion unit 310 converts the BAG and Lmax of each virtual link based on the conversion table. In this case, the conversion unit 310 creates a conversion table and performs virtual link conversion using Equation 1.
보다 구체적으로, 변환부(310) 내의 스케줄러(314)는 변환 테이블을 기초로 프레임 페이로드 중 변환된 Lmax에 맞추어 첫번째 단편을 전송하고 프레임 중 나머지 부분을 프레임 버퍼(312)에 저장한 후, 변환된 BAG에 맞추어 변환된 Lmax 단위로 순차적으로 전송한다. More specifically, the scheduler 314 in the converter 310 transmits the first fragment according to the converted Lmax in the frame payload based on the conversion table, stores the remaining part of the frame in the frame buffer 312, and then converts It transmits sequentially in Lmax unit converted to BAG.
프레임 전송부(316)는 스케줄러(314)의 제어에 따라 단편화된 프레임을 전송한다. The frame transmitter 316 transmits the fragmented frame under the control of the scheduler 314.
가상 링크를 거쳐 단편화된 프레임을 수신한 제2에지 스위치(500)는 수신된 프레임의 유효성을 확인하고, 수신된 프레임이 유효하면 프레임을 재조립한다(S330). After receiving the fragmented frame via the virtual link, the second edge switch 500 confirms the validity of the received frame and reassembles the frame if the received frame is valid (S330).
구체적으로, 제2에지 스위치(500)는 수신된 프레임의 유효성을 수학식 1을 이용하여 판단한다. 제2에지 스위치(500)가 수신된 프레임이 유효하다고 판단한 경우, 수신된 프레임의 페이로드만을 저장하고, 프레임 시퀀스 번호를 저장하고, 프레임 시퀀스 번호 오류 여부를 확인한다. Specifically, the second edge switch 500 determines the validity of the received frame using Equation 1. When the second edge switch 500 determines that the received frame is valid, only the payload of the received frame is stored, the frame sequence number is stored, and the frame sequence number is checked for errors.
이어, 저장된 프레임이 완성된 페이로드가 되는지 확인하고, 저장된 프레임 재조립 완료 여부를 확인한다. Then, it is checked whether the stored frame is a completed payload and checks whether the stored frame is reassembled.
구체적으로, 제2에지 스위치(500)는 첫번째 단편화 프레임 도착시간과 현재 수신된 단편화 프레임 도착시간의 차이가 변환 전 BAG 이상이면 재조립 완료로 확인한다. Specifically, if the difference between the arrival time of the first fragmented frame and the currently received fragmented frame arrival time is greater than or equal to the BAG before conversion, the second edge switch 500 confirms that the reassembly is completed.
본 발명에 따르면, 프레임 전송시 최적의 단편화를 수행하여 스위치 내부 메모리 용량의 요구도를 낮출 수 있다. 최대 메모리 크기를 낮추어 스위치 개발에 있어서 메모리 비용 및 스위치 개발 비용을 절감할 수 있다.According to the present invention, it is possible to reduce the requirement of the switch internal memory capacity by performing the optimal fragmentation during frame transmission. Lowering the maximum memory size can reduce memory and switch development costs in switch development.
또한, Lmax 길이의 단편화를 통해 복수 개의 입력 포트에 도착한 프레임들이 하나의 출력 포트로 나가는 경우 End-to-end 지연 시간이 줄어들게 되어, 네트워크 지연의 상위 범위를 종전보다 낮게 설정할 수 있어 네트워크 성능을 향상시킬 수 있다. In addition, Lmax length fragmentation reduces the end-to-end delay time when frames arriving at multiple input ports go out to one output port, and the upper range of network delay can be set lower than before, improving network performance. You can.
뿐만 아니라, 동일한 지연 범위 내에서 전송할 수 있는 패킷 양이 증가하여 가상 링크의 개수를 늘릴 수 있어 네트워크 성능을 향상시킬 수 있다.In addition, the number of packets that can be transmitted within the same delay range is increased to increase the number of virtual links, thereby improving network performance.
이상의 설명은 본 발명의 기술적 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면, 본 발명의 본질적 특성을 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능하다. 따라서, 본 발명에 표현된 실시 예들은 본 발명의 기술적 사상을 한정하는 것이 아니라, 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 권리범위가 한정되는 것은 아니다. 본 발명의 보호범위는 아래의 특허청구범위에 의하여 해석되어야 하고, 그와 동등하거나, 균등한 범위 내에 있는 모든 기술적 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention. Therefore, the embodiments represented in the present invention are not intended to limit the technical spirit of the present invention, but to describe, and the scope of the present invention is not limited by the embodiments. The scope of protection of the present invention should be interpreted by the claims below, and all technical ideas that are equivalent to or equivalent to the scope of the present invention should be construed as being included in the scope of the present invention.
Claims (16)
- 종단 간의 데이터 전송 지연시간에 대한 최대 허용 값이 설정된 네트워크 시스템에 있어서,In a network system having a maximum allowable value for the end-to-end data transmission delay,제1엔드 시스템과 제2엔드 시스템으로부터 각 가상 링크를 통하여 적어도 하나의 프레임을 수신한 후, 변환 테이블을 기초로 상기 각 가상 링크의 최소 전송 가능한 간격인 BAG(Bandwidth Allocation Gap)와 최대 전송 길이 (Lmax)를 변환하는 변환부를 포함하며, 변환된 BAG과 Lmax에 따라 프레임을 단편화하여 전송하는 제1에지 스위치; 및After receiving at least one frame from each of the first end system and the second end system through each virtual link, Bandwidth Allocation Gap (BAG) and maximum transmission length ( A first edge switch including a conversion unit for converting Lmax) and fragmenting and transmitting a frame according to the converted BAG and Lmax; And상기 제1에지 스위치로부터 수신된 프레임의 유효성을 판단하고, 상기 프레임이 유효하면 상기 프레임을 재조립하는 재조립부를 포함하고, 완성된 프레임을 목적지 엔드 시스템으로 전송하는 제2에지 스위치A second edge switch for determining a validity of a frame received from the first edge switch, and reassembling the frame if the frame is valid, and transmitting the completed frame to a destination end system.를 포함하는 네트워크 시스템.Network system comprising a.
- 제1항에 있어서, 상기 변환부는 The method of claim 1, wherein the conversion unit아래의 수학식을 이용하여 상기 변환 테이블을 작성하고 가상 링크의 설정 변환을 수행하는 것Creating the conversion table and performing the configuration conversion of the virtual link using the following equation인 네트워크 시스템.Network system.Lmax : 기존 설정 (제1엔드 시스템에 기 정의된 가상 링크의 Lmax)Lmax: Existing setting (Lmax of the virtual link predefined in the first-end system)Lmax' : 새로운 설정 (제1에지 스위치에서 새롭게 정의된 가상 링크의 Lmax)Lmax ': New setting (Lmax of the virtual link newly defined on the first edge switch)BAG : 기존 설정 (제1엔드 시스템에 기 정의된 가상 링크의 BAG)BAG: Existing configuration (BAG of virtual link previously defined in the first-end system)BAG' : 새로운 설정 (제1에지 스위치에 새롭게 정의된 제2가상 링크의 BAG)BAG ': New setting (BAG of the second virtual link newly defined on the first edge switch)여기서, Lmax는 MAC Destination Address, MAC Source Address, EtherType, Sequence number와 FCS를 제외한 Ethernet 페이로드 길이를 의미한다.Here, Lmax means Ethernet payload length excluding MAC Destination Address, MAC Source Address, EtherType, Sequence number and FCS.
- 제1항에 있어서, 상기 변환부는 The method of claim 1, wherein the conversion unit전송되지 않고 남은 프레임을 저장하는 프레임 버퍼; A frame buffer for storing frames remaining without being transmitted;상기 변환 테이블을 기초로 상기 프레임 페이로드 중 첫번째 단편을 전송하고 상기 프레임 중 나머지 부분은 상기 프레임 버퍼에 저장한 후 상기 변환된 BAG에 맞추어 후속의 단편을 순차적으로 전송하도록 제어하는 스케쥴러; 및A scheduler configured to transmit a first fragment of the frame payload based on the conversion table, store the remaining portion of the frame in the frame buffer, and then sequentially transmit subsequent fragments according to the converted BAG; And상기 스케쥴러로부터 제어 신호에 응답하여 상기 변환 테이블에 대응하는 단편화된 프레임을 전송하는 프레임 전송부를 포함하는 것 And a frame transmitter for transmitting a fragmented frame corresponding to the conversion table in response to a control signal from the scheduler.인 네트워크 시스템.Network system.
- 제3항에 있어서, BAG 타이머를 더 포함하고,The method of claim 3, further comprising a BAG timer,상기 스케쥴러는 상기 BAG 타이머가 만료되는 시점에 상기 변환 테이블에 대응하는 후속의 단편을 순차적으로 전송하도록 제어하는 것The scheduler controls to sequentially transmit subsequent fragments corresponding to the conversion table when the BAG timer expires인 네트워크 시스템.Network system.
- 제1항에 있어서, 제2에지 스위치는 상기 변환된 BAG과 Lmax를 이용하여 수신한 프레임 유효 여부를 판단하는 것The method of claim 1, wherein the second edge switch determines whether the received frame is valid using the converted BAG and Lmax.인 네트워크 시스템.Network system.
- 제1항에 있어서, 상기 재조립부는The method of claim 1, wherein the reassembly portion수신한 프레임이 유효한 경우 상기 프레임의 페이로드만 저장하는 재조립 메모리;A reassembly memory for storing only payload of the frame when the received frame is valid;상기 프레임 시퀀스 번호를 저장하고 상기 프레임 시퀀스 번호 오류 여부를 확인하는 재조립 제어부;A reassembly control unit for storing the frame sequence number and checking whether the frame sequence number is an error;저장된 프레임이 완성된 페이로드가 되는지 확인하고 상기 페이로드를 전송하는 프레임 전송부; 및A frame transmitter which checks whether a stored frame becomes a complete payload and transmits the payload; And상기 프레임 전송부로부터 수신한 상기 페이로드에 상기 가상 링크의 변환 전 설정에 대응하는 헤더, 시퀀스 번호 및 FCS를 부착하여 프레임을 완성하고 전송하는 프레이머를 포함하는 것And a framer for completing and transmitting a frame by attaching a header, a sequence number, and an FCS corresponding to a pre-conversion setting of the virtual link to the payload received from the frame transmitter.인 네트워크 시스템.Network system.
- 제1항에 있어서, 제2에지 스위치는 The method of claim 1, wherein the second edge switch첫번째 단편화 프레임 도착시간과 현재 수신된 단편화 프레임 도착시간의 차이가 변환 전 BAG 이상이면 프레임 재조립 완료로 확인하는 것If the difference between the first fragmented frame arrival time and the currently received fragmented frame arrival time is greater than or equal to the BAG before the conversion, confirming that the frame reassembly is completed.인 네트워크 시스템.Network system.
- 종단 간의 데이터 전송 지연시간에 대한 최대 허용 값이 설정된 네트워크 시스템에 있어서,In a network system having a maximum allowable value for the end-to-end data transmission delay,제1엔드 시스템과 제2엔드 시스템으로부터 각 가상 링크를 통하여 적어도 하나의 프레임을 수신한 후, 변환 테이블을 기초로 각 가상 링크의 최소 전송 가능한 간격인 BAG(Bandwidth Allocation Gap)와 최대 전송 길이 (Lmax)를 변환하는 변환부를 포함하며, 변환된 BAG 및 Lmax를 기초로 프레임을 단편화하여 전송하는 에지 스위치; 및After receiving at least one frame from each of the first end system and the second end system through each virtual link, Bandwidth Allocation Gap (BAG) and maximum transmission length (Lmax), which is the minimum transmittable interval of each virtual link, based on the conversion table. Edge switch for converting the fragment into frames based on the converted BAG and Lmax; And상기 에지 스위치로부터 수신된 프레임의 유효성을 판단하고, 상기 프레임이 유효하면 상기 프레임을 재조립하는 재조립부를 포함하는 제3엔드 시스템을 포함하는 것And a third end system including a reassembly unit for determining validity of a frame received from the edge switch and reassembling the frame if the frame is valid.인 네트워크 시스템.Network system.
- 제8항에 있어서, 상기 제3엔드 시스템은 상기 변환된 BAG 및 Lmax를 이용하여 수신한 프레임 유효 여부를 판단하는 것The method of claim 8, wherein the third end system determines whether the received frame is valid using the converted BAG and Lmax.인 네트워크 시스템.Network system.
- 제8항에 있어서, 상기 재조립부는The method of claim 8, wherein the reassembly portion수신한 프레임이 유효한 경우 상기 프레임의 페이로드만 저장하는 재조립 메모리;A reassembly memory for storing only payload of the frame when the received frame is valid;상기 프레임의 시퀀스 번호를 저장하고 상기 시퀀스 번호 오류 여부를 확인하는 재조립 제어부;A reassembly control unit for storing the sequence number of the frame and checking whether the sequence number is an error;저장된 프레임이 완성된 페이로드가 되는지 확인하고 상기 페이로드를 전송하는 프레임 전송부; 및A frame transmitter which checks whether a stored frame becomes a complete payload and transmits the payload; And상기 프레임 전송부로부터 수신한 상기 페이로드에 상기 가상 링크의 변환전 설정에 대응하는 헤더, 시퀀스 번호 및 FCS를 부착하여 프레임을 완성하고 전송하는 프레이머를 포함하는 것And a framer for completing and transmitting a frame by attaching a header, a sequence number, and an FCS corresponding to a pre-conversion setting of the virtual link to the payload received from the frame transmitter.인 네트워크 시스템.Network system.
- 종단 간의 데이터 전송 지연시간에 대한 최대 허용 값이 설정된 네트워크 시스템의 성능 개선방법에 있어서,In the performance improvement method of a network system in which the maximum allowable value for the end-to-end data transmission delay time is set,적어도 하나의 가상 링크를 통하여 프레임을 수신하는 단계;Receiving a frame over at least one virtual link;변환 테이블을 기초로 상기 가상 링크의 최소 전송 가능한 간격인 BAG(Bandwidth Allocation Gap)와 최대 전송 길이 (Lmax)를 변환하고 이에 기초하여 상기 프레임을 단편화하여 전송하는 단계; 및Converting a bandwidth Allocation Gap (BAG) and a maximum transmission length (Lmax), which are minimum transmittable intervals of the virtual link, based on a conversion table, and fragmenting and transmitting the frame based on the conversion table; And단편화된 프레임을 수신하고 수신된 프레임이 유효하면 상기 단편화된 프레임을 재조립하는 단계 Receiving a fragmented frame and reassembling the fragmented frame if the received frame is valid를 포함하는 네트워크 성능 개선 방법.Network performance improvement method comprising a.
- 제11항에 있어서, 상기 전송하는 단계는 The method of claim 11, wherein the transmitting step아래의 수학식을 이용하여 상기 변환 테이블을 작성하고 가상 링크의 설정을 변환하는 것Creating the conversion table and converting the settings of the virtual link using the following equation인 네트워크 성능 개선 방법.To improve network performance.Lmax : 기존 설정 (제1엔드 시스템에 기 정의된 가상 링크의 Lmax)Lmax: Existing setting (Lmax of the virtual link predefined in the first-end system)Lmax' : 새로운 설정 (제1에지 스위치에서 새롭게 정의된 가상 링크의 Lmax)Lmax ': New setting (Lmax of the virtual link newly defined on the first edge switch)BAG : 기존 설정 (제1엔드 시스템에 기 정의된 가상 링크의 BAG)BAG: Existing configuration (BAG of virtual link previously defined in the first-end system)BAG' : 새로운 설정 (제1에지 스위치에 새롭게 정의된 제2가상 링크의 BAG)BAG ': New setting (BAG of the second virtual link newly defined on the first edge switch)여기서, Lmax는 MAC Destination Address, MAC Source Address, EtherType, Sequence number와 FCS를 제외한 Ethernet 페이로드 길이를 의미한다.Here, Lmax means Ethernet payload length excluding MAC Destination Address, MAC Source Address, EtherType, Sequence number and FCS.
- 제11항에 있어서, 상기 전송하는 단계는 The method of claim 11, wherein the transmitting step전송되지 않고 남은 프레임을 저장하는 단계;Storing a frame remaining without being transmitted;상기 변환 테이블을 기초로 상기 프레임 페이로드 중 첫 번째 단편을 전송하고 상기 프레임 중 나머지 부분을 프레임 버퍼에 저장하는 단계; 및Transmitting a first fragment of the frame payload based on the conversion table and storing the remaining portion of the frame in a frame buffer; And상기 변환 테이블에 대응하는 단편화된 프레임을 전송하는 단계Transmitting a fragmented frame corresponding to the conversion table를 더 포함하는 것Containing more인 네트워크 성능 개선 방법.To improve network performance.
- 제11항에 있어서, 상기 재조립하는 단계는 BAG 및 Lmax를 이용하여 수신한 프레임 유효 여부를 판단하는 것The method of claim 11, wherein the reassembling comprises determining whether a received frame is valid using BAG and Lmax.인 네트워크 성능 개선 방법.To improve network performance.
- 제11항에 있어서, 재조립하는 단계는The method of claim 11, wherein the reassembling is수신한 프레임이 유효한 경우 상기 프레임의 페이로드만 저장하는 단계;Storing only the payload of the frame if the received frame is valid;상기 프레임의 시퀀스 번호를 저장하는 단계;Storing a sequence number of the frame;프레임 시퀀스 번호 오류 여부를 확인하는 단계;Checking whether a frame sequence number error occurs;저장된 프레임이 완성된 페이로드가 되는지 확인하는 단계; 및Checking whether the stored frame becomes a complete payload; And저장된 프레임 재조립 완료 여부를 확인하는 단계를 더 포함하는 것Further comprising checking whether the stored frame reassembly is complete인 네트워크 성능 개선 방법.To improve network performance.
- 제15항에 있어서, 상기 재조립 완료 여부를 확인하는 단계는The method of claim 15, wherein checking whether the reassembly is completed첫번째 단편화 프레임 도착시간과 현재 수신된 단편화 프레임 도착시간의 차이가 변환 전 BAG 이상이면 재조립 완료로 확인하는 것If the difference between the first fragmentation frame arrival time and the currently received fragmentation frame arrival time is greater than or equal to the BAG before conversion, the reassembly is confirmed.인 네트워크 성능 개선 방법.To improve network performance.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130087350A KR101434422B1 (en) | 2013-07-24 | 2013-07-24 | Method for improving network by modulating virtual link and the system thereof |
KR10-2013-0087350 | 2013-07-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015012454A1 true WO2015012454A1 (en) | 2015-01-29 |
Family
ID=51751361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2013/011648 WO2015012454A1 (en) | 2013-07-24 | 2013-12-16 | Method of improving network performance by controlling virtual link, and network system employing same |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101434422B1 (en) |
WO (1) | WO2015012454A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3069398A1 (en) * | 2017-07-21 | 2019-01-25 | Safran Electronics & Defense | PROCESS FOR SWITCHING FRAMES |
EP3618362A1 (en) | 2018-09-03 | 2020-03-04 | Airbus Operations (S.A.S.) | On-board communication network of a vehicle, subscriber equipment for such a communication network and corresponding method |
US10778575B2 (en) | 2017-02-20 | 2020-09-15 | Ge Aviation Systems Llc | Systems and methods for scheduling a message |
CN113806290A (en) * | 2021-08-27 | 2021-12-17 | 中国航空无线电电子研究所 | High-integrity system-on-chip for comprehensive modular avionics system |
CN114884887A (en) * | 2022-03-24 | 2022-08-09 | 中国民航大学 | Security-oriented AFDX switch credit dynamic management system and method |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101764173B1 (en) * | 2015-08-12 | 2017-08-02 | 전자부품연구원 | Power consumption managing method for terminal on profiled network and networking apparatus performing the same |
KR101785821B1 (en) * | 2016-01-04 | 2017-10-16 | 엘에스산전 주식회사 | Method of monitoring frame receiving in serial communication |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090073984A1 (en) * | 2007-09-18 | 2009-03-19 | Timothy Edwards Jackson | Packet generator for a communication network |
KR20090123662A (en) * | 2008-05-28 | 2009-12-02 | 전자부품연구원 | Method and apparatus for packet shaper using dadule regulator |
US20100284313A1 (en) * | 2007-09-03 | 2010-11-11 | AIRBUS OPERATIONS (inc. as a Soc. par ACT. Simpl.) | Frame switching device |
US20120250694A1 (en) * | 2011-03-28 | 2012-10-04 | Tttech Computertechnik Ag | Centralized traffic shaping for data networks |
JP2013048415A (en) * | 2011-08-25 | 2013-03-07 | Honeywell Internatl Inc | Embedded end-to-end delay information for data networks |
-
2013
- 2013-07-24 KR KR1020130087350A patent/KR101434422B1/en not_active IP Right Cessation
- 2013-12-16 WO PCT/KR2013/011648 patent/WO2015012454A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100284313A1 (en) * | 2007-09-03 | 2010-11-11 | AIRBUS OPERATIONS (inc. as a Soc. par ACT. Simpl.) | Frame switching device |
US20090073984A1 (en) * | 2007-09-18 | 2009-03-19 | Timothy Edwards Jackson | Packet generator for a communication network |
KR20090123662A (en) * | 2008-05-28 | 2009-12-02 | 전자부품연구원 | Method and apparatus for packet shaper using dadule regulator |
US20120250694A1 (en) * | 2011-03-28 | 2012-10-04 | Tttech Computertechnik Ag | Centralized traffic shaping for data networks |
JP2013048415A (en) * | 2011-08-25 | 2013-03-07 | Honeywell Internatl Inc | Embedded end-to-end delay information for data networks |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10778575B2 (en) | 2017-02-20 | 2020-09-15 | Ge Aviation Systems Llc | Systems and methods for scheduling a message |
FR3069398A1 (en) * | 2017-07-21 | 2019-01-25 | Safran Electronics & Defense | PROCESS FOR SWITCHING FRAMES |
EP3618362A1 (en) | 2018-09-03 | 2020-03-04 | Airbus Operations (S.A.S.) | On-board communication network of a vehicle, subscriber equipment for such a communication network and corresponding method |
FR3085567A1 (en) * | 2018-09-03 | 2020-03-06 | Airbus Operations (S.A.S.) | COMMUNICATION NETWORK ON VEHICLE, SUBSCRIBED EQUIPMENT OF SUCH A COMMUNICATION NETWORK AND CORRESPONDING METHOD |
US11190592B2 (en) | 2018-09-03 | 2021-11-30 | Airbus Operations (S.A.S.) | Communication network on board a vehicle, subscriber device of such a communication network, and corresponding method |
CN113806290A (en) * | 2021-08-27 | 2021-12-17 | 中国航空无线电电子研究所 | High-integrity system-on-chip for comprehensive modular avionics system |
CN113806290B (en) * | 2021-08-27 | 2023-10-27 | 中国航空无线电电子研究所 | High-integrity system-on-a-chip for integrated modular avionics systems |
CN114884887A (en) * | 2022-03-24 | 2022-08-09 | 中国民航大学 | Security-oriented AFDX switch credit dynamic management system and method |
CN114884887B (en) * | 2022-03-24 | 2023-05-26 | 中国民航大学 | Security-oriented AFDX switch credit dynamic management system and method |
Also Published As
Publication number | Publication date |
---|---|
KR101434422B1 (en) | 2014-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015012454A1 (en) | Method of improving network performance by controlling virtual link, and network system employing same | |
WO2018117279A1 (en) | Network device and method for selecting transmission of network device | |
EP0788692B1 (en) | Method for assigning priority to traffic between local area networks interconnected via a backbone network | |
US7630309B1 (en) | Systems and methods for limiting the rates of data to/from a buffer | |
US7813285B2 (en) | Method for per-port flow control of packets aggregated from multiple logical ports over a transport link | |
US6647428B1 (en) | Architecture for transport of multiple services in connectionless packet-based communication networks | |
WO2021075671A1 (en) | Centralized network configuration entity and time-sensitive network control system comprising same | |
US7573821B2 (en) | Data packet rate control | |
US6115379A (en) | Unicast, multicast, and broadcast method and apparatus | |
US20070171918A1 (en) | Frame forwarding apparatus for converting VLAN identifiers | |
JP5249682B2 (en) | Passage time fixing device for protective relay device | |
WO2018117280A1 (en) | Network device and queue management method for network device | |
JP2003518817A (en) | Network switching method using packet scheduling | |
WO2015030491A1 (en) | Bandwidth providing method based on multi-flow grouping | |
JP6236945B2 (en) | Transmission apparatus, transmission system, and transmission method | |
WO2007071153A1 (en) | A method, a data network system and a network node for transmitting data packets | |
US20120014260A1 (en) | Communication device in communication network and communication control method | |
WO2015080525A1 (en) | Method and apparatus for dynamic traffic control in sdn environment | |
Amari et al. | AeroRing: Avionics full duplex ethernet ring with high availability and QoS management | |
WO2022092632A2 (en) | Offset-based transmission path and slot discovery method for periodic end-to-end low-latency traffic transmission, and control device performing same | |
KR102463075B1 (en) | Methods of lossless traffic forwarding using distributed delay offset metching, and apparatuses performing the same | |
JP2004080603A (en) | Packet controller connected between interconnection network and radio equipment | |
Leyrer et al. | Analysis and implementation of multi-protocol gigabit Ethernet switch for real-time control systems | |
JP3891945B2 (en) | Packet communication device | |
WO2020222356A1 (en) | Communication method for reducing asymmetry in dual paths of ring topology |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13890073 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13890073 Country of ref document: EP Kind code of ref document: A1 |