WO2021075683A1 - System, device, and method for measuring delay time of service function - Google Patents
System, device, and method for measuring delay time of service function Download PDFInfo
- Publication number
- WO2021075683A1 WO2021075683A1 PCT/KR2020/010501 KR2020010501W WO2021075683A1 WO 2021075683 A1 WO2021075683 A1 WO 2021075683A1 KR 2020010501 W KR2020010501 W KR 2020010501W WO 2021075683 A1 WO2021075683 A1 WO 2021075683A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- packet
- service function
- delay time
- time
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
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/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
Definitions
- the present invention relates to a system, apparatus, and method for measuring delay time of a service function (SF).
- SF service function
- the network device When an external terminal device is communicatively connected with the network device and transmits at least one packet to the network device, the network device processes at least one function for the received packet and provides the network service requested by the terminal device to the terminal. It can be provided to the device.
- the function that the network device processes for at least one packet is referred to as a service function (SF can be referred to as a network service function).
- Service Function Chaining (SFC) technology (which can also be referred to as Network Service Chaining technology) is a combination of multiple service functions. It refers to the technology to be processed accordingly. That is, the service function chaining technology classifies packets according to the network policy and allows a group of service functions to be sequentially processed for them.
- a detection packet is used periodically.
- a separately prepared controller or monitoring engine periodically generates detection packets and delivers them to the service function, and the corresponding service function transmits feedback on whether or not there is a failure to the controller or engine in response, and receives the feedback received by the controller or engine. Based on the determination of the failure, the delay in processing was diagnosed.
- Such a monitoring method is commonly referred to as out-of-band monitoring.
- out-of-band monitoring has a problem of causing network congestion because packets for monitoring are periodically generated.
- detailed monitoring becomes difficult because it is impossible to measure the processing delay time of the service function in this manner.
- An object of the present invention is to provide a system, apparatus, and method for measuring a delay time of a service function capable of monitoring at least one network service function without additional bandwidth, and to grasp a specific situation in more detail when processing is delayed.
- a system, apparatus, and method for measuring delay time of a service function are provided.
- the delay time measurement system receives a packet, processes a service function on the packet, delivers the packet to the service function unit and the service function unit, which outputs the processed packet, and delivers the packet to the service function unit.
- a transfer processing unit for recording a first transmission time and recording a first reception time at which the processed packet is received from the service function unit, wherein the service function unit records a second reception time at which the packet is received, The second transmission time of transmitting the packet processed by the service function to the transfer processing unit is recorded, and the processing delay time for the packet may be calculated based on the second reception time and the second transmission time.
- the delay time measurement method includes the steps of: a delivery processing unit delivering a packet to a service function unit and recording a first transmission time at which the packet is delivered, a service function unit receiving a packet, and determining a second reception time at which the packet is received. Recording, the service function transferring the packet processed with the service function to the transfer processing unit, and recording a second transmission time when the packet processed with the service function is transferred to the transfer processing unit, the transfer processing unit Receiving the processed packet from the functional unit, recording a first reception time at which the processed packet was received, and calculating a processing delay time for the packet based on the second reception time and the second transmission time It may include the step of.
- the delay time measurement apparatus includes a time recording unit for recording a first transmission time for transmitting a packet to a service function unit and a first reception time for receiving a packet from the service function unit, and a second reception at which the service function recorded in the packet receives the packet.
- a delay processing unit that reads out a second transmission time at which the time and the service function unit transmits the packing, and calculates a processing delay time by using a difference between the second transmission time and the second reception time.
- 1 is a block diagram of an embodiment of a delay time measurement system.
- FIG. 2 is a diagram for explaining an embodiment of an operation of a delivery processing unit and a service function unit.
- FIG. 3 is a block diagram of an embodiment of a network service header.
- FIG. 4 is a first diagram for explaining an embodiment of an operation of a delay processing unit.
- FIG. 5 is a second diagram for explaining an embodiment of an operation of a delay processing unit.
- FIG. 6 is a first flowchart of an embodiment of a method for measuring a delay time of a service function.
- FIG. 7 is a second flowchart of an embodiment of a method for measuring a delay time of a service function.
- FIG. 8 is a third flowchart of an embodiment of a method for measuring a delay time of a service function.
- FIG. 9 is a flowchart of an embodiment of an operation of a transfer processing unit.
- unit used below may be implemented in software or hardware, and according to an embodiment, one "unit” is implemented as one physical or logical part, or a plurality of “units” are implemented as one It may be implemented as a physical or logical part, or one'unit' may be implemented as a plurality of physical or logical parts.
- a part When a part is said to be connected to another part throughout the specification, it may mean a physical connection depending on the part and another part, or it may mean that it is electrically connected. In addition, when a part includes another part, this does not exclude another part other than the other part unless specifically stated to the contrary, and it means that another part may be further included according to the designer's choice. do.
- FIGS. 1 to 5 An embodiment of a system for measuring a delay time of a service function and a device for measuring a delay time will be described with reference to FIGS. 1 to 5.
- 1 is a block diagram of an embodiment of a delay time measurement system.
- the delay time measurement system 100 of a predetermined network acquires a packet 20 from an external device 10 and receives a packet ( It is possible to process and perform the service function for 20) and/or monitor the operation and failure of the service function. More specifically, the packet 20 is received from the external device 10, and the received network It may be provided to classify the packets 20 into one or more according to a policy, and to sequentially or randomly process network service functions for all or part of the classified at least one packet 20.
- a predetermined network for example, a software defined network (SDN)
- SDN software defined network
- the delay time measurement system 100 includes a control unit 110 that manages or controls the overall operation of the delay time measurement system 100, and a service processing unit that processes a service function for each packet 20 ( 120).
- the control unit 110 and the service processing unit 120 may be physically separated.
- the control unit 110 and the service processing unit 120 may be implemented using at least one physically separated processor or at least one computing device.
- the control unit 110 may be implemented as a computing device or a server named as a controller of SDN, and each component of the service processing unit 120 may be implemented as a node that performs a predetermined operation. have.
- the controller 110 may control the packet 20 and/or control or manage the service processing unit 120.
- the control unit 110 may designate or change a setting for the packet 20 and/or transmit a corresponding response to the service processing unit 120 in response to a request from the service processing unit 120.
- the control unit 110 uses a method such as time stamping on the input packet 20 to transmit the transmission time or the reception time (t11, t12 in FIG. 2, It can also be set to record t21, t22), and the like.
- the control unit 110 generates a processing rule (112 in FIG.
- control unit 110 may also be referred to as a control plane.
- the service processing unit 120 may process at least one service function for each packet 20 transmitted by the external device 10.
- the service processing unit 120 may be implemented based on a service function chaining technology as needed.
- the service processing unit 120 may be referred to as a service function chaining domain (SFC domain).
- the service processing unit 120 may be implemented as a data plane.
- the service processing unit 120 may be implemented based on a programmable data plane (PDP).
- PDP programmable data plane
- the service processing unit 120 includes a service classification unit (SC: Service Classifier) 121, a first to nth forwarding processing unit (SFF: Service Function Forwarder, 130-1 to 130-n, n is a natural number of 1 or more), and a first To n-th service function units 135-1 to 135-n.
- SC Service Classifier
- SFF Service Function Forwarder
- 130-1 to 130-n n is a natural number of 1 or more
- n is a natural number of 1 or more
- first To n-th service function units 135-1 to 135-n In FIG. 1, the first to nth service functional units 135-1 to 135-n are shown to be provided corresponding to each of the first to nth transfer processing units 130-1 to 130-n. Depending on the situation, it may be provided in response to a many-to-one or one-to-many relationship.
- the first delivery processing unit 130-1 corresponds to the first service function unit 135-1 to the kth service function unit 135-k, where k is an arbitrary natural number greater than 1 and less than or equal to n. Packets may be delivered to a corresponding service function unit so that a predetermined service function is performed.
- All or part of the service classification unit 121, the first to nth delivery processing units 130-1 to 130-n, and the first to nth service function units 135-1 to 135-n, respectively, are physically It may be distinguished, and/or may be logically divided.
- the service processing unit 120 may be implemented using a plurality of physical devices.
- each of the service classification unit 121, the first to nth transfer processing units 130-1 to 130-n, and the first to nth service function units 135-1 to 135-n is at least one It can be implemented using a physical device.
- the physical device may include a server computer device, a router, an Ethernet hub device, a gateway device, a desktop computer, a laptop computer, a smartphone, a tablet PC, or a set-top box, but is not limited thereto, and various It may include an electronic device. More specifically, for example, the service classification unit 121, the first to nth transfer processing units 130-1 to 130-n, and the first to nth service function units 135-1 to 135-n are Each may be implemented using separate communication equipment.
- the service classification unit 121 is implemented by a switch or a router, and the first to nth transfer processing units 130-1 to 130-n and the Each of the first to nth service function units 135-1 to 135-n may be implemented by a separate server computer device.
- any one delivery processing unit (130-1 to 130-n) and any one or two or more service processing units (135-1 to 135-n) corresponding thereto are It is also possible to implement based on a computer device, etc.).
- the packet 20 transmitted by the external device 10 may be sequentially or non-sequentially delivered to at least one of the first to nth transfer processing units 130-1 to 130-n through the service classification unit 121. have. If necessary, the packet 20 is transmitted to at least one of the first to nth service function units 135-1 to 135-n, and then at least one of the service processing units 130-2 to 130-n in the next order. ).
- the packet 20 may include an encapsulation packet (30 in FIG. 2).
- the transfer processing units 130-1 to 130-n determine whether to transfer the packets 20 and 30 to the service function units 135-1 to 135-n, and transmit the packets 20 and 30 according to the determination.
- the service function units 135-1 to 135-n may be transmitted to the service function units 135-1 to 135-n and/or to the delivery processing units 130-2 to 130-n or the external device 90 in the following order. Operations and functions of the service classification unit 121, the delivery processing units 130-1 to 130-n, and the service function units 135-1 to 135-n will be described later.
- the external devices 10 and 90 transmit the packet 20 to the service processing unit 120 of the delay time measurement system 100 and/or the service processing from the service processing unit 120. Can receive packets.
- the external device 10 transmitting the packet and the external devices 10 and 90 receiving the processed packet may be the same or different from each other.
- the external devices 10 and 90 may be physical media or virtual media. In the case of a physical medium, the external devices 10 and 90 may include at least one of a wired communication network and a wireless communication network (which may include mobile communication and/or may include short-range communication such as Wi-Fi or Bluetooth).
- an electronic device provided to be communicatively connected to the service processing unit 120 through the transmission and reception of the packet 20, wherein the electronic device is, for example, a smartphone, a tablet PC, a desktop computer, and a laptop. It may include a computer, a server computer, a home appliance, a robot, a vehicle, a black box, a wearable device, a mechanical device, and/or a construction machine.
- the external device 10 is a source node
- a service classifying unit is a service classifier (SC) node
- a forwarding processing unit is a service function forwarder (SFF) node
- a service function unit is a service function (SF) node
- Reference numeral 90 may be referred to as a destination node.
- FIG. 2 is a diagram for explaining an embodiment of an operation of a delivery processing unit and a service function unit. 2 shows only one delivery processing unit 130 and one service function unit 135 corresponding thereto, but this is for convenience of description, and does not exclude the presence of other delivery processing units and other service function units.
- the service classification unit 121 may receive the packet 20 and classify the received packet 20 according to a predefined classification rule. In addition, the service classification unit 121 may decrypt the received packet 20 or further encrypt the packet to be transmitted, if necessary.
- the service classification unit 121 performs encapsulation on the packet 20 by adding a network service header 31 to all or part of the received packet 20 according to the classification result. By doing so, the network service header 31 is added to obtain an encapsulated packet 30 (hereinafter, an encapsulated packet). Accordingly, the identifier can be marked on the packet in the traffic flow.
- the encapsulation packet 30 may be delivered to at least one of the at least one delivery processing unit 130-1 to 130-n. For example, the encapsulation packet 30 is initially transferred to the first transfer processing unit 130-1, and then sequentially or non-sequentially, the second transfer unit to the n-th transfer unit 130-1 to 130-n. It may be delivered to at least one of.
- FIG. 3 is a block diagram of an embodiment of a network service header.
- the network service header 31 may include a basic header 32, a service path header 34, and a context header 36.
- the basic header 32 may include various types of information related to the network service header 31.
- the basic header 32 is the version of the network service header 31, the type of the packet 20, the maximum number of transfer processing units 130-1 to 130-n, and the total length of the network service header 31 , Meta data type and/or protocol type of encapsulated data may be included.
- the service path header 34 includes a service path identifier 34-1, which is information for identifying a service function path (SFP) for processing the received packet 20, and a service index for identifying a service function to be processed ( 34-2).
- the service index 34-2 may include a number of 1 or more.
- the service index 34-2 is decreased by 1 each time the service function unit 135 processes the packet 30, so that it is possible to check how many times the service function has been processed for the packet 30. I can do it. Subtraction of the service index 34-2 may be performed by the service function unit 135. At least one metadata such as context data may be marked and recorded in the context header 36.
- the context header 36 may be a Fixed-Length Context Header, a Variable-Length Context Header, or Variable-Length Metadata. have.
- the context header 36 may be marked with a second reception time t22, which is a time when the service function unit 135 receives the packet 32.
- t22 is a time when the service function unit 135 receives the packet 32.
- at least one of the basic header 32, the service path header 34, and the context header 36 may be omitted.
- the service classification unit 121 may also remove the added network service header 31. Specifically, a packet encapsulated by the first to nth transfer processing units 130-1 to 130-n and the corresponding first to nth service functions 135-1 to 135-n. When all the scheduled service functions for (30) are processed, the packet may be transmitted to the external devices 10 and 90 of the packet 30, and the service classifying unit 121 transmits a packet to the external devices 10 and 90. It is also possible to remove the network service header 31 from the packet 30 before it is delivered. Depending on the embodiment, it is also possible for elements other than the service classification unit 121 to remove the network service header 31. For example, the n-th transfer processing unit 130-n may remove the network service header 31, and another network device physically or logically separately provided may remove the network service header 31.
- the transfer processing unit 130 may include a selection unit 131 and a first time recording unit 132, and may further include a delay processing unit 140 if necessary.
- the selection unit 131 determines whether to transmit the encapsulation packet 30 to the corresponding service function unit 135 based on the information in the network service header 31 of the received encapsulation packet 30, and Accordingly, the packet 30 can be delivered to the service function unit 135.
- the selection unit 131 may transmit the encapsulation packet 30 to other transfer processing units 130-2 to 130-n according to the information of the network service header 31.
- the transfer of the packet 30 to the other transfer processing units 130-2 to 130-n may be performed regardless of the transfer of the packet 30 to the service function unit 135, or the service function unit 135 It may be performed in conjunction with the delivery of the packet 30 to. In the latter case, the transfer of the packet 30 to the other transfer processing units 130-2 to 130-n may be performed simultaneously with the transfer of the packet 30 to the service function unit 135 or may be performed sequentially.
- the selection unit 131 may determine whether the received packets 30 and 32 are packets transmitted from the service classification unit 121 or returned via the service function unit 135. . That is, the selection unit 131 determines whether the received packet 30, 32 is the first packet 30 or the previously received packet 32, and as a result of the determination, the first received packet 30 In the case of, the packet 30 is transferred to the service function unit 135 and/or to the next transfer processing unit 130-2 to 130-n, and in the case of the previously received packet 32, the packet 32 is transferred to the next It can be transferred to the transfer processing units 130-2 to 130-n.
- the first time recording unit 132 is the time at which the packet 30 is transmitted to the service function unit 135 ( t11, hereinafter, the first transmission time) may be determined and recorded temporarily or non-temporarily.
- the first time recording unit 132 may store the first transmission time t1 in the storage units 150 and 151, or may record it in the network service header 31, for example, the context header 36. have.
- the storage unit 150 may be provided in the transfer processing unit 130.
- the storage unit 150 may include a semiconductor memory device or a magnetic disk storage device mounted on the transfer processing unit 130 implemented as a programmable switch.
- the storage unit 151 may be provided separately from the transfer processing unit 130.
- the storage unit 151 may include a computer device or an external storage medium (such as a universal serial bus memory device or an external hard disk device) separately constructed for storing data.
- the first time recording unit 132 stores the first transmission time t11 in the storage units 150 and 151 and/or the network service header 31 using a time stamping function of a programmable data plane. , For example, it can be recorded in the context header 36.
- the first time recording unit 132 when receiving the processed packet 32 from the service function unit 135, stores the reception time (t12, hereinafter, the first reception time) of the processed packet 32 ( It may be temporarily or non-temporarily stored in at least one of 150 and 151 and the network service header 31. Even in this case, the first time recording unit 132 may store the first reception time t12 in the storage units 150 and 151 and/or the network service header 31 using a time stamping function of a programmable data plane. .
- the delay processing unit 140 may determine whether a service processing is delayed or a failure occurs. This will be described later.
- the service function unit 135 may process a predefined service function for the encapsulation packet 30 and transmit the packet 32 (hereinafter, processed packet) in which the service function is processed to the transfer processing unit 130 again.
- the service functions provided by the service function unit 135 are firewall, packet filtering, deep packet inspection (DPI), network address translation (NAT), transmission control protocol (TCP) optimization, and intrusion. Detection, load balancer, or virtualization may be included, but are not limited thereto.
- the service function unit 135 may include a second time recording unit 136 for recording time.
- the second time recording unit 136 stores the time at which the encapsulation packet 30 is received (t22, hereinafter, the second reception time), a network service header 31, a storage unit 150 of the transfer processing unit 130, and a storage unit provided separately. It can be recorded in at least one of (151).
- the received packet 30 is a packet set to perform time stamping by the control unit 110
- the second time recording unit 136 uses the time stamping function to determine the second reception time t22 to the network service. It may be marked and recorded on the context header 36 of the header 31 and/or marked on the storage units 150 and 151 and stored.
- the second time recording unit 136 stores the transmitted time (t21, hereinafter the second transmission time) in the network service header. (31), it may be recorded in at least one of the storage unit 150 of the transfer processing unit 130 and the storage unit 151 provided separately.
- the second time recording unit 136 stores the second reception time t22 in at least one of the context header 36 and the storage units 150 and 151 of the network service header 31 by using a time stamping function. It can be marked and recorded. At least one of the second reception time t22 and the second transmission time t21 may be temporarily stored or may be stored non-temporarily.
- FIG. 4 is a first diagram illustrating an operation of a delay processing unit according to an exemplary embodiment
- FIG. 5 is a second diagram illustrating an operation of a delay processing unit according to an exemplary embodiment.
- the delay processing unit 140 of the delivery processing unit 130 includes a time recorded in at least one of the storage units 150 and 151 and the network service header 31 (t11 to t22).
- the delay times d1 to d3 are calculated and measured based on the values, and it is possible to determine whether a service processing is delayed or a failure occurs based on the calculation and measurement results.
- the transfer processing unit 130 can operate as a delay time measuring device.
- the delay time measurement system 100 may include a delay processing unit 145 provided separately from the transmission processing unit 130, as shown in FIG. 4.
- the delay processing unit 140 of the transfer processing unit 130 may be omitted.
- the delay processing unit 145 may be physically separated from the transfer processing unit 130 and may be implemented using, for example, a computing device.
- the delay processing unit 145 provided separately may be implemented by the above-described control unit 110 or the service processing unit 120.
- the delay processing unit 145 provided separately may be logically separated from the transfer processing unit 130.
- the delay processing unit 145 provided separately from the transmission processing unit 130 may operate in the same manner as the operation of the delay processing unit 140 of the transmission processing unit 130 or partially modified as described below.
- the delay processing unit 140 may include a delay time calculating unit 141, a comparison unit 143, and a result processing unit 143, as shown in FIG. 5.
- the delay time calculator 141 may obtain at least two of the first to fourth transmission times t11, t12, t21, and t22. More specifically, for example, the delay time calculation unit 141 calls the first transmission time t11 and the first reception time t12 from the storage units 150 and 151, and the network service header 31, for example, The second transmission time t21 and the second reception time t22 recorded in the raw context header 36 may be read. Depending on the embodiment, the delay time calculating unit 141 may call all of these times (t11 to t22) from the storage units 150 and 151, or all of these times (t11 to t22) may be used in the network service header 31 It is also possible to read from ).
- the delay time calculating unit 141 sequentially performs an operation based on at least two of the acquired first to fourth transmission times (t11, t12, t21, t22), and the round-trip delay (d1) ), processing delay (d2), and transmission delay (Propagation Delay, d3).
- the round trip delay time d1 refers to a time required for the packet 30 transmitted from the transfer processing unit 130 to return to the corresponding transfer processing unit 130 through the service function unit 135.
- the delay time calculation unit 141 includes a first transmission time t11, which is a time when the transmission processing unit 130 transmits the encapsulated packet 30, and a time when the transmission processing unit 130 receives the processed packet 32.
- the round trip delay time d1 can be calculated.
- the round trip delay time d1 may be calculated by adding a predetermined weight or correction value to the difference between the first transmission time t11 and the first reception time t12.
- the processing delay time d2 refers to a time that has elapsed while the service function unit 135 processes the service function.
- the delay time calculation unit 141 calculates the difference between the second reception time t22 and the second transmission time t21 stored in the storage units 150 and 151 or marked on the network service header 31, so that the processing delay time ( d2) can be calculated.
- the processing delay time d2 may also be obtained by adding a weight or a correction value to the difference between the second reception time t22 and the second transmission time t21.
- the transmission delay time d3 refers to a time taken for the packets 30 and 32 to be transmitted between the transfer processing unit 130 and the service function unit 135.
- the transmission delay time d3 means the elapsed time in the link between the transfer processing unit 130 and the service function unit 135.
- the delay time calculator 141 may calculate the transmission delay time d3 by subtracting the processing delay time d2 from the round trip delay time d1.
- the delay time measurement system 100 can measure not only the round trip delay time d1, but also the processing delay time d2 or the transmission delay time d3. It is possible to diagnose and determine in more detail whether a failure has occurred or whether a failure has occurred in the link between the delivery processing unit 130 and the service function unit 135.
- At least one of the calculated round trip delay time d1, processing delay time d2, and transmission delay time d3 may be transmitted to the comparison unit 142.
- the comparison unit 142 determines at least one of the round trip delay time d1, the processing delay time d2, and the transmission delay time d3 received from the delay time calculating unit 141, and a threshold value v1, v2, v3) and output the comparison result. For example, the comparison unit 142 compares the round trip delay time d1 with a preset first threshold value v1, and compares the processing delay time d2 with a preset second threshold value v2, And/or the transmission delay time d3 is compared with a preset third threshold value v3 to obtain a comparison result. These threshold values v1, v2, and v3 may be previously defined by a designer or a user of the delay time measurement system 100. The comparison result may be transmitted to the result processing unit 143.
- the result processing unit 143 may perform a predetermined operation according to the comparison result of the comparison unit 142.
- the result processing unit 143 may determine whether there is a delay or failure according to the comparison result, and determine whether a processing rule 152 corresponding to the determined delay or failure exists. If there is no pre-defined processing rule 152 corresponding to the generated delay, the result processing unit 143 may transmit a message requesting a new processing rule 112 to the control unit 110.
- a round trip delay time (d1), a processing delay time (d2), and a transmission delay time (d3) together with the request message so that the control unit 110 can appropriately create or modify the processing rule 112 It can also be transmitted to (110).
- the control unit 110 transmits the newly acquired processing rule 112 to the delivery processing unit 130 and/or the service function unit 135 according to a network policy, and the like, so that the delivery processing unit 130 and/or the service function unit ( 135) can be properly operated in response to delays or failures.
- the newly acquired processing rule 112 may include a failure response table rule, and the failure response table rule is stored in the storage unit 150 of the delivery processing unit 130 in a manner that is stored in the delivery processing unit 130. It is provided and/or recorded in a separate storage unit 151 and transmitted to the delivery processing unit 130 according to the request of the delivery processing unit 130, so that the delivery processing unit 130 can operate appropriately in response to a failure. .
- the delivery processing unit 130 cancels the transmission of the packet 30 to the service function 135 according to the table rule and delivers the packet 30 to the other delivery processing units 130-2 to 130-n. You can do it.
- the result processing unit 143 is the transfer processing unit 130 and/or the service function unit 135 as a pre-defined processing rule 152 It can be made to perform the operation according to.
- the result processing unit 143 determines that a problem has occurred in the corresponding service function unit 135, and transfers corresponding thereto. Such a result can be transmitted to the processing unit 130.
- the transfer processing unit 130 may perform an operation according to a processing rule 152 stored in the storage units 150 and 151 or previously inserted in the transfer processing unit 130.
- the transmission processing unit 130 may transmit the received or to-be-received packet 30 to another transmission processing unit corresponding to the other service function unit so that another service function unit processes the packet 30.
- the other service function unit may be a service function unit that processes the same service function as the service function unit 135 in which a delay or failure occurs.
- the processing delay time d2 of the service function unit 135-i corresponding to the i-th transmission processing unit 130-i, i is a natural number equal to or greater than 1) exceeds the threshold value v2
- the i-th transmission processing unit (130-i) transfers all or part of the previously received or continuously received packet 30 to another (i+k) transfer processing unit (130-i+k, where k is a natural number greater than or equal to 1), and ,
- the (i+k)th transfer processing unit 130-i+k transmits the received packet 30 to the corresponding (i+k)th service function unit 135-i+k to the packet 30.
- Service functions can be handled. In this way, the load of the service function unit 135 having a long processing delay time d2 can be distributed.
- the processing unit 143 transmits this to the corresponding delivery processing unit 130, and the delivery processing unit 130 determines whether there is another path (another link) connecting the delivery processing unit 130 and the corresponding service function unit 135. It is determined, and if a different path exists, the packets 30 and 32 may be bypassed and transmitted to the other path. If there is no other path, the packet 30 may be transmitted to another delivery processing unit (at least one of 130-2 to 130-n) for processing by another service function unit (at least one of 135-2 to 135-n). have.
- FIG. 6 is a first flowchart illustrating a method of measuring a delay time of a service function
- FIG. 7 is a second flowchart illustrating a method of measuring a delay time of a service function.
- 8 is a third flowchart of an embodiment of a method for measuring a delay time of a service function.
- a packet is input from an external physical device or a virtual device, and accordingly, a delay time measurement system, for example, a service classifier, obtains the packet (300).
- the delay time measurement device may be implemented by including at least one electronic device (for example, a server computer device, a network switch, and/or a network hub, etc.) capable of physically or virtually transmitting and receiving packets.
- the delay time measurement system for example, the service classification unit may classify the received packet and encapsulate the packet by adding a network service header to the packet (302).
- the encapsulated packet to which the network service header is added may be transmitted from the service classification unit to at least one transmission processing unit, for example, the first transmission processing unit (303, 304).
- the first transfer processing unit may determine whether to process a service function for the encapsulated packet (306 ).
- the first delivery processing unit delivers the encapsulated packet to the service function unit corresponding to the first delivery processing unit, for example, the first service function unit, and at the same time Alternatively, the time at which packets encapsulated to the first service function unit are sequentially delivered (ie, the first transmission time) may be recorded.
- the first transmission time may be stored in a separately provided storage unit (eg, a memory space allocated for the first transmission processing unit), and/or a partial space of the network service header (eg, a context header), depending on the embodiment. It can also be stored in.
- the first service function unit may receive the encapsulation packet and process a service function on the encapsulation packet (312). Simultaneously or sequentially, the first service function may record the reception time (ie, the second reception time) of the encapsulated packet. Depending on the embodiment, the first service function unit may store the second reception time in a separate storage unit, and/or may be marked and stored in a space of the network service header (for example, a context header).
- the first service function unit may return the encapsulated packet back to a corresponding transmission processing unit, that is, the first transmission processing unit (316).
- the first service function may record the transmission time (i.e., the second transmission time).
- the first service function unit may store the second reception time in a separate physical storage unit, and/or may be marked and stored in a space of the network service header (for example, a context header).
- the first transfer processing unit when the first transfer processing unit receives the encapsulated packet in which the service function has been processed from the first service function unit, it may record the time at which the packet is received, that is, the first reception time ( 318).
- the first reception time may be recorded in a separate storage unit and/or a location of a network service header.
- the delay time measurement system for example, the first transmission processing unit may calculate at least one delay time using at least one of a first transmission time, a first reception time, a second transmission time, and a second reception time (320). .
- the calculation of the delay time may be performed by a separate logical element or a physical device.
- the at least one delay time may include at least one of a round trip delay time, a processing delay time, and a transmission delay time.
- the round trip delay time can be obtained by calculating the difference between the first transmission time and the first reception time
- the processing delay time can be obtained by calculating the difference between the second reception time and the second transmission time
- the transmission delay time is It can be obtained by calculating the difference between the round trip delay time and the processing delay time.
- the delay time and the threshold value may be sequentially compared with each other (322).
- the threshold value may be a dictionary predefined by a user or a designer, and may be stored, for example, in a storage unit.
- the threshold value may be predefined corresponding to each delay time. That is, according to an embodiment, the threshold value may include at least one of a first threshold value corresponding to a round trip delay time, a second threshold value corresponding to a processing delay time, and a third threshold value corresponding to a transmission delay time. . Accordingly, the round trip delay time may be compared with the first threshold value, the processing delay time may be compared with the second threshold value, and/or the transmission delay time may be compared with the third threshold value.
- the first transfer processing unit may perform comparison on all of the aforementioned round trip delay time, processing delay time, and transmission delay time, or may perform comparison only on one or both of them.
- the delay time is greater than the threshold value (YES in 322), it may be sequentially determined whether or not a processing rule exists (324). Specifically, for example, when the processing delay time is greater than the second threshold, it may be determined whether or not a corresponding processing rule exists, and/or when the transmission delay time is greater than the third threshold, the corresponding It may be determined whether or not there is a processing rule to be processed.
- the first transfer processing unit or the first service function unit may be designed to determine the presence or absence of the processing rule, or if all of these delay times are greater than the threshold value, it may be designed to determine the presence or absence of the processing rule.
- a delivery processing unit or a service function unit operates according to the processing rule (326). For example, if the processing delay time is greater than the second threshold value, the first delivery processing unit is not the first service function unit, but another service function unit that performs the same operation according to the corresponding processing rule (for example, the second service function unit).
- the encapsulated packet may be delivered to another delivery processing unit (for example, a second delivery processing unit, etc.) so that the packet is transmitted to each other.
- the first transmission processing unit searches for another link and transmits the packet to the first service function unit through the searched other link according to a processing rule corresponding thereto.
- the packet may be delivered to another delivery processing unit corresponding to the other service function unit so that the other service function unit processes the packet.
- the delivery processing unit, the service function unit, and the like may deliver and process the encapsulated packet according to a predetermined processing rule.
- a new processing rule may be provided (328).
- the first delivery processing unit or the first service processing unit may directly create or modify a processing rule according to the absence of a processing rule, or may request a processing rule from a portion capable of creating or modifying the processing rule.
- the part capable of generating or modifying the processing rule may include a first delivery processing unit or another part logically or physically separated from the first service processing unit, and may include, for example, a control unit.
- the first transfer processing unit, the first service function unit, etc. operate according to the new processing rule (326). If the first delivery processing unit or another part logically or physically separated from the first service processing unit (eg, a control unit) creates or modifies a new processing rule, the first delivery processing unit or the first service processing unit It receives the processing rule to be transmitted, and operates according to the received processing rule.
- the first delivery processing unit or another part logically or physically separated from the first service processing unit eg, a control unit
- creates or modifies a new processing rule the first delivery processing unit or the first service processing unit It receives the processing rule to be transmitted, and operates according to the received processing rule.
- the first transfer processing unit may transfer the encapsulated packet to the next transfer processing unit, for example, the second transfer processing unit (308, 304). This may be performed until the encapsulation packet is delivered to all of the predetermined delivery processing units. For example, when N number of transmission processing units are set, the operation may be performed until finally the encapsulation packet is finally delivered to the Nth transmission processing unit (307).
- the first transfer processing unit or the first service function unit may continue to perform the service function processing process as previously designed.
- the network service header encapsulated in the packet is removed (334), and the packet from which the network service header is removed is output to the outside.
- the completion of all service function processing may include that packets are processed sequentially or in an arbitrary order by all of the predetermined service function units. In other words, among all the transmission processing units, all of the transmission processing units for which the packet is scheduled to be delivered. It may include that the encapsulation packet is delivered at least once.
- the removal of the network service header may be performed by the service classification unit, or may be performed by another part separately provided for removal of the network service header.
- the service classification unit may include a service classification unit that attaches a network service header to the packet.
- the encapsulated packet may be delivered to the next delivery processing unit (for example, the second delivery processing unit) (339, 304). Thereafter, the next delivery processing unit may check the delay time through the same process as described above, and when a delay occurs, use a pre-defined delay or failure processing rule or create and use a new processing rule (304 to 326). ). If no failure has occurred, the encapsulated packet may be delivered to the next delivery processing unit (for example, a third transmission processing unit), or the network service header may be arranged and the packet may be output to the outside.
- the above-described process may be repeatedly performed until a packet is delivered to all required transfer processing units (ie, at least one of the first to n-th transfer processing units) (338).
- the service function corresponding to the delivery processing unit (for example, the first transmission processing unit) that has received the packet does not need to perform processing on the packet, so that the delivery processing unit is When the encapsulated packet is delivered to the second delivery processing unit) (No in 306), the next delivery processing unit transmits the packet to the next delivery processing unit (for example, the third delivery processing unit) depending on whether or not the service function is processed (306, 308, 310) Or the same or a partially modified method as described above, determines whether there is a delay or failure, and delivers a packet to the corresponding service function unit (for example, a third service function unit) according to the determination result, or exists. Or, it may operate according to a newly created processing rule (312 to 336).
- the k-th transfer processing unit (k is a natural number greater than or equal to 1) may also operate in the same or modified manner as described above (304 to 336).
- FIG. 9 is a flowchart of an embodiment of an operation of a transfer processing unit.
- the transfer processing unit may perform different operations according to whether the input encapsulation packet is a previously input packet or a new packet.
- the transfer processing unit may obtain a packet (340), and determine whether the acquired packet is a packet that has been previously input or a new packet (342).
- the previously input packet may include a packet transmitted by the delivery processing unit to the service function unit.
- the transfer processing unit may transmit the packet to the service function unit, and simultaneously or sequentially record the time at which the packet is transmitted, that is, the first transmission time (344).
- the service function unit performs service function processing in response to reception of the packet.
- the service function unit may mark the packet reception time (ie, the second reception time) in addition to the packet reception on the storage unit or the network service header added to the packet.
- the transfer processing unit records the time at which the packet is received (i.e., the first reception time), and if necessary, the delay time (e.g., round trip delay time, processing delay time, and / Or a transmission delay time) may be calculated or the received packet may be transmitted to another transmission processing unit (346).
- the delay time e.g., round trip delay time, processing delay time, and / Or a transmission delay time
- the method for measuring a delay time of a service function may be implemented in the form of a program that can be driven by a computer device.
- the program may include a program command, a data file, a data structure, or the like alone or in combination.
- the program may be designed and produced using machine code or high-level language code.
- the program may be specially designed to implement the above-described method, or may be implemented using various functions or definitions that are known and available to those skilled in the computer software field.
- the computer device may be implemented including a processor or a memory that enables the function of a program to be realized, and may further include a communication device if necessary.
- the above-described program can be recorded on a computer-readable recording medium.
- the computer-readable recording medium includes, for example, a semiconductor storage device such as a solid state drive (SSD), ROM, RAM, or flash memory, a magnetic disk storage medium such as a hard disk or a floppy disk, and a compact disk or a DVD. It may include at least one type of physical device capable of storing a specific program executed according to a call such as a computer, such as a magnetic-optical recording medium such as an optical recording medium, a floptic disk, and the like, and a magnetic tape.
- the service function delay time measurement system, apparatus, and method are not limited to the above-described embodiments.
- Various devices or methods that can be implemented by modifying and modifying based on the above-described embodiment by a person of ordinary skill in the art may also be an example of the system, device, and method for measuring the delay time of the service function described above.
- the described techniques are performed in an order different from the described method, and/or components such as systems, structures, devices, and circuits described are combined or combined in a form different from the described method, or other components or Even if it is replaced or substituted by an equivalent, it may be an example of a system, apparatus, and method for measuring the delay time of the service function described above.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 서비스 기능(Service Function, SF)의 지연 시간 측정 시스템, 장치 및 방법에 관한 것이다.The present invention relates to a system, apparatus, and method for measuring delay time of a service function (SF).
외부의 단말 장치가 네트워크 장치와 통신 가능하게 연결되고, 적어도 하나의 패킷을 네트워크 장치로 전송하면, 네트워크 장치는 수신한 패킷에 대해 적어도 하나의 기능을 처리하고, 단말 장치가 요구하는 네트워크 서비스를 단말 장치에 제공할 수 있다. 여기서, 네트워크 장치가 적어도 하나의 패킷에 대해 처리하는 기능을 서비스 기능(SF: Service Function, 네트워크 서비스 기능으로 지칭 가능함)이라고 한다.When an external terminal device is communicatively connected with the network device and transmits at least one packet to the network device, the network device processes at least one function for the received packet and provides the network service requested by the terminal device to the terminal. It can be provided to the device. Here, the function that the network device processes for at least one packet is referred to as a service function (SF can be referred to as a network service function).
서비스 기능 체이닝(SFC: Service Function Chaining) 기술(네트워크 서비스 체이닝(Network Service Chaining) 기술로도 지칭 가능함)은 복수의 서비스 기능을 조합한 것으로, 복수의 서비스 기능 중 특정한 서비스 기능이 미리 정의된 조건에 따라 처리되도록 하는 기술을 의미한다. 즉, 서비스 기능 체이닝 기술은 네트워크 정책에 따라 패킷들을 분류하고, 이들에 대해 일군의 서비스 기능이 순차적으로 처리되도록 한다.Service Function Chaining (SFC) technology (which can also be referred to as Network Service Chaining technology) is a combination of multiple service functions. It refers to the technology to be processed accordingly. That is, the service function chaining technology classifies packets according to the network policy and allows a group of service functions to be sequentially processed for them.
종래에는 서비스 기능 체이닝 하에서의 각각의 서비스 기능의 처리 지연 여부(즉, 장애 여부)를 판단하기 위해서, 주기적으로 탐지 패킷을 이용하였다. 상세하게는 별도로 마련된 컨트롤러나 모니터링 엔진이 탐지 패킷을 주기적으로 생성하여 서비스 기능에 전달하고, 해당 서비스 기능은 이에 응하여 장애 여부에 대한 피드백을 컨트롤러나 엔진에 전송하고, 컨트롤러나 엔진이 수신한 피드백을 기반으로 장애 여부를 판단함으로써 처리 지연 여부를 진단하였다. 이와 같은 모니터링 방식을 통상 아웃오브밴드(Out-of-band) 방식 모니터링이라 한다. 그러나, 아웃오브밴드 방식 모니터링은 주기적으로 모니터링을 위한 패킷을 발생시키기 때문에 네트워크 혼잡을 유발하는 문제점이 있다. 또한, 이와 같은 방식으로는 서비스 기능의 처리 지연 시간의 측정이 불가능하여 세밀한 모니터링이 어려워진다는 문제점도 있었다.Conventionally, in order to determine whether the processing delay of each service function under the service function chaining (ie, whether there is a failure), a detection packet is used periodically. In detail, a separately prepared controller or monitoring engine periodically generates detection packets and delivers them to the service function, and the corresponding service function transmits feedback on whether or not there is a failure to the controller or engine in response, and receives the feedback received by the controller or engine. Based on the determination of the failure, the delay in processing was diagnosed. Such a monitoring method is commonly referred to as out-of-band monitoring. However, out-of-band monitoring has a problem of causing network congestion because packets for monitoring are periodically generated. In addition, there is a problem that detailed monitoring becomes difficult because it is impossible to measure the processing delay time of the service function in this manner.
본 발명은 추가적인 대역폭 없이도 적어도 하나의 네트워크 서비스 기능을 모니터링하고, 처리 지연 시 구체적인 상황을 보다 상세하게 파악할 수 있는 서비스 기능의 지연 시간 측정 시스템, 장치 및 방법을 제공하는 것을 해결하고자 하는 과제로 한다.An object of the present invention is to provide a system, apparatus, and method for measuring a delay time of a service function capable of monitoring at least one network service function without additional bandwidth, and to grasp a specific situation in more detail when processing is delayed.
상술한 과제를 해결하기 위하여 서비스 기능의 지연 시간 측정 시스템, 장치 및 방법이 제공된다.In order to solve the above problems, a system, apparatus, and method for measuring delay time of a service function are provided.
지연 시간 측정 시스템은, 패킷을 수신하고, 상기 패킷에 대해 서비스 기능을 처리하여, 처리된 패킷을 출력하는 서비스 기능부 및 상기 서비스 기능부에 패킷을 전달하고, 상기 패킷을 상기 서비스 기능부에 전달한 제1 송신 시간을 기록하고, 상기 서비스 기능부로부터 상기 처리된 패킷을 수신한 제1 수신 시간을 기록하는 전달 처리부를 포함하되, 상기 서비스 기능부는 상기 패킷을 수신한 제2 수신 시간을 기록하고, 서비스 기능이 처리된 패킷을 상기 전달 처리부에 전달한 제2 송신 시간을 기록하며, 상기 패킷에 대한 처리 지연 시간은 상기 제2 수신 시간 및 상기 제2 송신 시간을 기반으로 연산 될 수 있다.The delay time measurement system receives a packet, processes a service function on the packet, delivers the packet to the service function unit and the service function unit, which outputs the processed packet, and delivers the packet to the service function unit. And a transfer processing unit for recording a first transmission time and recording a first reception time at which the processed packet is received from the service function unit, wherein the service function unit records a second reception time at which the packet is received, The second transmission time of transmitting the packet processed by the service function to the transfer processing unit is recorded, and the processing delay time for the packet may be calculated based on the second reception time and the second transmission time.
지연 시간 측정 방법은, 전달 처리부가 서비스 기능부에 패킷을 전달하고, 상기 패킷이 전달된 제1 송신 시간을 기록하는 단계, 서비스 기능부가 패킷을 수신하고, 상기 패킷을 수신한 제2 수신 시간을 기록하는 단계, 상기 서비스 기능부가 상기 전달 처리부에 서비스 기능이 처리된 패킷을 전달하고, 상기 서비스 기능이 처리된 패킷을 상기 전달 처리부에 전달한 제2 송신 시간을 기록하는 단계, 상기 전달 처리부가 상기 서비스 기능부로부터 상기 처리된 패킷을 수신하고, 상기 처리된 패킷이 수신된 제1 수신 시간을 기록하는 단계 및 상기 제2 수신 시간 및 상기 제2 송신 시간을 기반으로 상기 패킷에 대한 처리 지연 시간을 연산하는 단계를 포함할 수 있다.The delay time measurement method includes the steps of: a delivery processing unit delivering a packet to a service function unit and recording a first transmission time at which the packet is delivered, a service function unit receiving a packet, and determining a second reception time at which the packet is received. Recording, the service function transferring the packet processed with the service function to the transfer processing unit, and recording a second transmission time when the packet processed with the service function is transferred to the transfer processing unit, the transfer processing unit Receiving the processed packet from the functional unit, recording a first reception time at which the processed packet was received, and calculating a processing delay time for the packet based on the second reception time and the second transmission time It may include the step of.
지연 시간 측정 장치는 서비스 기능부에 패킷을 전달한 제1 송신 시간 및 서비스 기능부로부터 패킷을 수신한 제1 수신 시간을 기록하는 시간 기록부 및 상기 패킷에 기록된 서비스 기능부가 패킷을 수신한 제2 수신 시간 및 상기 서비스 기능부가 패킹을 송신한 제2 송신 시간을 독출하고, 상기 제2 송신 시간 및 상기 제2 수신 시간의 차이를 이용하여 처리 지연 시간을 연산하는 지연 처리부를 포함할 수 있다.The delay time measurement apparatus includes a time recording unit for recording a first transmission time for transmitting a packet to a service function unit and a first reception time for receiving a packet from the service function unit, and a second reception at which the service function recorded in the packet receives the packet. A delay processing unit that reads out a second transmission time at which the time and the service function unit transmits the packing, and calculates a processing delay time by using a difference between the second transmission time and the second reception time.
상술한 서비스 기능의 지연 시간 측정 시스템, 장치 및 방법에 의하면, 추가적인 대역폭 없이도 적어도 하나의 서비스 기능의 지연 또는 장애 발생 여부를 보다 적절하게 모니터링할 수 있게 된다.According to the above-described service function delay time measurement system, apparatus, and method, it is possible to more appropriately monitor whether or not a delay or failure of at least one service function occurs without additional bandwidth.
또한, 적어도 하나의 서비스 기능의 처리 지연이 어느 부분에서 발생하게 되었는지 더욱 상세하게 세부적으로 확인 및 분석할 수 있게 되어, 지연의 원인을 정확한 판단이 가능하게 된다.In addition, it is possible to confirm and analyze in more detail where the processing delay of at least one service function has occurred, so that the cause of the delay can be accurately determined.
또한, 서비스 기능 체이닝 기술에 있어서, 별도의 탐지 패킷의 생성 및 입력 없이도 서비스 기능의 지연 시간을 측정하거나 장애 발생 여부를 판단할 수 있어 모니터링을 위한 컨트롤러나 모니터링 엔진 등 별도의 하드웨어나 소프트웨어를 구축할 필요가 없어질 뿐만 아니라, 탐지 패킷에 의한 대역폭 오버헤드 등과 같은 네트워크 혼잡을 미연에 방지할 수 있게 되므로, 네트워크 장치에 대한 모니터링의 효율성 및 경제성을 재고할 수 있게 된다.In addition, in the service function chaining technology, it is possible to measure the delay time of the service function or determine whether a failure occurs without generating and inputting a separate detection packet, so that separate hardware or software such as a controller or monitoring engine for monitoring can be built. In addition to eliminating the need, network congestion such as bandwidth overhead due to detection packets can be prevented in advance, so that the efficiency and economics of monitoring network devices can be reconsidered.
도 1은 지연 시간 측정 시스템의 일 실시예에 대한 블록도이다.1 is a block diagram of an embodiment of a delay time measurement system.
도 2는 전달 처리부 및 서비스 기능부의 동작의 일 실시예를 설명하기 위한 도면이다.2 is a diagram for explaining an embodiment of an operation of a delivery processing unit and a service function unit.
도 3은 네트워크 서비스 헤더의 일 실시예에 대한 블록도이다.3 is a block diagram of an embodiment of a network service header.
도 4는 지연 처리부의 동작의 일 실시예를 설명하기 위한 제1 도이다.4 is a first diagram for explaining an embodiment of an operation of a delay processing unit.
도 5는 지연 처리부의 동작의 일 실시예를 설명하기 위한 제2 도이다.5 is a second diagram for explaining an embodiment of an operation of a delay processing unit.
도 6은 서비스 기능의 지연 시간 측정 방법의 일 실시예에 대한 제1 흐름도이다.6 is a first flowchart of an embodiment of a method for measuring a delay time of a service function.
도 7은 서비스 기능의 지연 시간 측정 방법의 일 실시예에 대한 제2 흐름도이다.7 is a second flowchart of an embodiment of a method for measuring a delay time of a service function.
도 8은 서비스 기능의 지연 시간 측정 방법의 일 실시예에 대한 제3 흐름도이다.8 is a third flowchart of an embodiment of a method for measuring a delay time of a service function.
도 9는 전달 처리부의 동작의 일 실시예에 대한 흐름도이다.9 is a flowchart of an embodiment of an operation of a transfer processing unit.
이하 명세서 전체에서 동일 참조 부호는 특별한 사정이 없는 한 동일 구성요소를 지칭한다. 이하에서 사용되는 '부'가 부가된 용어는, 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예에 따라 하나의 '부'가 하나의 물리적 또는 논리적 부품으로 구현되거나, 복수의 '부'가 하나의 물리적 또는 논리적 부품으로 구현되거나, 하나의 '부'가 복수의 물리적 또는 논리적 부품들로 구현되는 것도 가능하다.In the following specification, the same reference numerals refer to the same elements unless otherwise specified. The term "unit" used below may be implemented in software or hardware, and according to an embodiment, one "unit" is implemented as one physical or logical part, or a plurality of "units" are implemented as one It may be implemented as a physical or logical part, or one'unit' may be implemented as a plurality of physical or logical parts.
명세서 전체에서 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 어떤 부분과 다른 부분에 따라서 물리적 연결을 의미할 수도 있고, 또는 전기적으로 연결된 것을 의미할 수도 있다. 또한, 어떤 부분이 다른 부분을 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 부분 이외의 또 다른 부분을 제외하는 것이 아니며, 설계자의 선택에 따라서 또 다른 부분을 더 포함할 수 있음을 의미한다.When a part is said to be connected to another part throughout the specification, it may mean a physical connection depending on the part and another part, or it may mean that it is electrically connected. In addition, when a part includes another part, this does not exclude another part other than the other part unless specifically stated to the contrary, and it means that another part may be further included according to the designer's choice. do.
제1이나 제2 등의 용어는 하나의 부분을 다른 부분으로부터 구별하기 위해 사용되는 것으로, 특별한 기재가 없는 이상 이들이 순차적인 표현을 의미하는 것은 아니다. 또한, 단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함할 수 있다.Terms such as first or second are used to distinguish one part from another, and unless otherwise specified, they do not mean sequential expressions. In addition, expressions in the singular may include plural expressions unless there is a clear exception in the context.
이하, 도 1 내지 도 5를 참조하여 서비스 기능의 지연 시간 측정 시스템 및 지연 시간 측정 장치의 일 실시예에 대해서 설명하도록 한다.Hereinafter, an embodiment of a system for measuring a delay time of a service function and a device for measuring a delay time will be described with reference to FIGS. 1 to 5.
도 1은 지연 시간 측정 시스템의 일 실시예에 대한 블록도이다.1 is a block diagram of an embodiment of a delay time measurement system.
도 1에 도시된 바를 참조하면, 소정의 네트워크(예컨대, 소프트웨어 정의 네트워크(Software Defined Network, SDN)의 지연 시간 측정 시스템(100)은 외부의 장치(10)로부터 패킷(20)을 획득하고 패킷(20)에 대한 서비스 기능을 처리 및 수행하고 및/또는 서비스 기능의 동작 및 장애 여부를 모니터링할 수 있다. 보다 구체적으로는, 외부의 장치(10)로부터 패킷(20)을 수신하고, 수신한 네트워크 정책 등에 따라 패킷(20)을 하나 이상으로 분류하고, 분류된 적어도 하나의 패킷(20)의 전부 또는 일부에 대해 순차적으로 또는 임의적 순서로 네트워크 서비스 기능을 처리하도록 마련된 것일 수 있다.1, the delay
일 실시예에 의하면, 지연 시간 측정 시스템(100)은 지연 시간 측정 시스템(100)의 전반적인 동작을 관리하거나 제어하는 제어부(110), 각각의 패킷(20)에 대해 서비스 기능을 처리하는 서비스 처리부(120)를 포함할 수 있다. 제어부(110) 및 서비스 처리부(120)는 물리적으로 구분된 것일 수도 있다. 이 경우, 제어부(110) 및 서비스 처리부(120)는 각각 물리적으로 구분된 적어도 하나의 프로세서 또는 적어도 하나의 컴퓨팅 장치 등을 이용하여 구현될 수 있다. 예컨대, 제어부(110)는 SDN의 컨트롤러(controller)로 명명되는 컴퓨팅 장치나 서버 등으로 구현될 수 있고, 서비스 처리부(120)의 각 구성들은 미리 정해진 동작을 수행하는 노드(node)로 구현될 수 있다.According to an embodiment, the delay
제어부(110)는 패킷(20)의 제어 및/또는 서비스 처리부(120)의 제어 또는 관리 등을 처리할 수 있다. 예를 들어, 제어부(110)는 패킷(20)에 대한 설정을 지정 또는 변경하거나, 및/또는 서비스 처리부(120)의 요청에 응하여 대응하는 응답을 서비스 처리부(120)로 전달할 수도 있다. 보다 구체적으로 예를 들어, 전자의 경우, 제어부(110)는 입력된 패킷(20)에 대해 타임 스탬핑(time stamping) 등의 방법을 통해 후술한 송신 시간 또는 수신 시간(도 2의 t11, t12, t21, t22) 등을 기록하도록 설정할 수도 있다. 후자의 경우, 제어부(110)는 서비스 처리부(120)에서 요청하는 처리 규칙(도 5의 112)을 생성하거나 별도로 마련된 저장 매체(일례로 제어부(110)에 마련된 반도체 기억 장치나 자기디스크 기억 장치 등)에 저장된 처리 규칙(112)을 호출하거나 및/또는 기존의 처리 규칙을 수정하여 새로운 처리 규칙(112)을 획득한 후 이를 서비스 처리부(120)로 전달할 수도 있다. 제어부(110)는 제어 평면(Control Plane)으로 지칭될 수도 있다.The
서비스 처리부(120)는 외부의 장치(10)가 전달한 패킷(20) 각각에 대해 적어도 하나의 서비스 기능을 처리할 수 있다. 일 실시예에 의하면, 서비스 처리부(120)는 필요에 따라 서비스 기능 체이닝 기술을 기반으로 구현된 것을 수도 있다. 이 경우, 서비스 처리부(120)는 서비스 기능 체이닝 영역(SFC domain, Service Function Chaining domain)으로 지칭될 수도 있다. 또한, 서비스 처리부(120)는 데이터 평면(Data Plane)으로 구현된 것일 수 있다. 실시예에 따라, 서비스 처리부(120)는 프로그래밍 가능한 데이터 평면(PDP: Programable Data Plane)을 기반으로 구현된 것일 수 있다.The service processing unit 120 may process at least one service function for each
서비스 처리부(120)는 서비스 분류부(SC: Service Classifier, 121), 제1 내지 제n 전달 처리부(SFF: Service Function Forwarder, 130-1 내지 130-n, n은 1 이상의 자연수), 및 제1 내지 제n 서비스 기능부(135-1 내지 135-n)를 포함할 수 있다. 도 1에서, 제1 내지 제n 서비스 기능부(135-1 내지 135-n)는 제1 내지 제n 전달 처리부(130-1 내지 130-n) 각각에 대응하여 마련된 것으로 도시되어 있으나, 실시예에 따라 다대일 또는 일대다의 관계로 대응하여 마련될 수도 있다. 예컨대, 제1 전달처리부(130-1)에는 제1 서비스 기능부(135-1) 내지 제k 서비스 기능부(135-k, k는 1보다 크고 n보다 작거나 같은 임의의 자연수)가 대응되어 미리 정해진 서비스 기능이 수행되도록 해당하는 서비스 기능부로 패킷을 전달할 수 있다.The service processing unit 120 includes a service classification unit (SC: Service Classifier) 121, a first to nth forwarding processing unit (SFF: Service Function Forwarder, 130-1 to 130-n, n is a natural number of 1 or more), and a first To n-th service function units 135-1 to 135-n. In FIG. 1, the first to nth service functional units 135-1 to 135-n are shown to be provided corresponding to each of the first to nth transfer processing units 130-1 to 130-n. Depending on the situation, it may be provided in response to a many-to-one or one-to-many relationship. For example, the first delivery processing unit 130-1 corresponds to the first service function unit 135-1 to the kth service function unit 135-k, where k is an arbitrary natural number greater than 1 and less than or equal to n. Packets may be delivered to a corresponding service function unit so that a predetermined service function is performed.
서비스 분류부(121), 제1 내지 제n 전달 처리부(130-1 내지 130-n) 및 제1 내지 제n 서비스 기능부(135-1 내지 135-n)의 전부 또는 일부는, 각각 물리적으로 구분되는 것일 수도 있고, 및/또는 논리적으로 구분되는 것일 수도 있다. 다시 말해서, 서비스 처리부(120)는 복수의 물리적 장치를 이용하여 구현될 수도 있다. 이 경우, 서비스 분류부(121), 제1 내지 제n 전달 처리부(130-1 내지 130-n), 및 제1 내지 제n 서비스 기능부(135-1 내지 135-n) 각각은 적어도 하나의 물리적 장치를 이용하여 구현될 수 있다. 여기서, 물리적 장치는 서버용 컴퓨터 장치, 라우터, 이더넷 허브 장치, 게이트웨이 장치, 데스크톱 컴퓨터, 랩톱 컴퓨터, 스마트폰, 태블릿 피씨 또는 셋톱 박스 등을 포함할 수 있으나, 이에 한정되는 것은 아니며, 설계자가 고려 가능한 다양한 전자 장치를 포함할 수 있다. 보다 구체적으로 예를 들어, 서비스 분류부(121), 제1 내지 제n 전달 처리부(130-1 내지 130-n), 및 제1 내지 제n 서비스 기능부(135-1 내지 135-n)는 각각 별도의 통신 장비를 이용하여 구현된 것일 수 있으며, 이 경우, 서비스 분류부(121)는 스위치나 라우터에 의해 구현되고, 제1 내지 제n 전달 처리부(130-1 내지 130-n) 및 제1 내지 제n 서비스 기능부(135-1 내지 135-n) 각각은 별도의 서버용 컴퓨터 장치에 의해 구현된 것일 수도 있다. 실시예에 따라서, 어느 하나의 전달 처리부(130-1 내지 130-n)와 이에 대응하는 어느 하나 또는 둘 이상의 서비스 처리부(135-1 내지 135-n)가 하나의 물리적 장치(예를 들어, 서버용 컴퓨터 장치 등)를 기반으로 구현되는 것도 가능하다.All or part of the
외부 장치(10)가 전송한 패킷(20)은 서비스 분류부(121)를 거쳐 제1 내지 제n 전달 처리부(130-1 내지 130-n) 중 적어도 하나에 순차적으로 또는 비순차적으로 전달될 수 있다. 필요에 따라, 패킷(20)은 제1 내지 제n 서비스 기능부(135-1 내지 135-n) 중 적어도 하나에 전달된 후, 다음 순서의 서비스 처리부(130-2 내지 130-n 중 적어도 하나)에 전달될 수도 있다. 이 경우, 패킷(20)은 캡슐화 패킷(도 2의 30)을 포함할 수 있다. 구체적으로 전달 처리부(130-1 내지 130-n)는 패킷(20, 30)의 서비스 기능부(135-1 내지 135-n)로의 전달 여부를 결정하고, 결정된 바에 따라서 패킷(20, 30)을 서비스 기능부(135-1 내지 135-n)로 전달하거나 및/또는 다음 순서의 전달 처리부(130-2 내지 130-n) 또는 외부장치(90)로 전달할 수 있다. 서비스 분류부(121), 전달 처리부(130-1 내지 130-n) 및 서비스 기능부(135-1 내지 135-n) 각각의 동작 및 기능에 대해선 후술하도록 한다.The
외부 장치(10, 90)는 명령, 지시 또는 데이터 등을 패킷(20)을 지연 시간 측정 시스템(100)의 서비스 처리부(120)로 전달하거나 및/또는 서비스 처리부(120)로부터 서비스 처리가 수행된 패킷을 수신할 수 있다. 이 경우, 패킷을 전송한 외부 장치(10)와 처리된 패킷을 수신하는 외부 장치(10, 90)는 서로 동일할 수도 있고 서로 상이할 수도 있다. 외부 장치(10, 90)는 물리적 매체일 수도 있고, 가상적 매체일 수도 있다. 물리적 매체인 경우, 외부 장치(10, 90)는, 유선 통신 네트워크 및 무선 통신 네트워크(이동통신을 포함할 수도 있고 및/또는 와이파이나 블루투스와 같은 근거리 통신 등을 포함할 수도 있다) 중 적어도 하나를 통해 서비스 처리부(120)와 통신 가능하게 연결되어 패킷(20)의 송수신을 수행할 수 있도록 마련된 전자 장치를 포함 가능하며, 여기서 전자 장치는, 예를 들어, 스마트폰, 태블릿 피씨, 데스크톱 컴퓨터, 랩톱 컴퓨터, 서버용 컴퓨터, 가전 기기, 로봇, 차량, 블랙박스, 웨어러블 장치, 기계 장치 및/또는 건설 기계 등을 포함할 수 있다.The
도 1에 도시된 서비스 처리부(120)의 각 구성, 즉 서비스 분류부(121), 제1 내지 제n 전달 처리부(130-n), 및 제1 내지 제n 서비스 기능부와 외부 장치(10, 90) 각각은 노드(node)로 표현될 수도 있다. 이 경우, 외부 장치(10)는 소스 노드(source node), 서비스 분류부는 SC(Service Classifier) 노드, 전달 처리부는 SFF(Service Function Forwarder) 노드, 서비스 기능부는 SF(Service Function) 노드, 그리고 외부 장치(90)는 목적지 노드(destination node)로 불릴 수 있다.Each configuration of the service processing unit 120 shown in FIG. 1, that is, a
도 2는 전달 처리부 및 서비스 기능부의 동작의 일 실시예를 설명하기 위한 도면이다. 도 2에는 하나의 전달 처리부(130) 및 이에 대응하는 하나의 서비스 기능부(135)만을 도시하고 있으나, 이는 설명의 편의를 위한 것으로, 다른 전달 처리부와 다른 서비스 기능부의 존재를 배제하는 것은 아니다. 도 1의 다른 전달 처리부, 일례로 제2 전달 처리부 내지 제n 전달 처리부(130-2 내지 130-n)과 이에 대응하는 제2 서비스 기능부 내지 제n 서비스 기능부(135-2 내지 135-n) 역시도, 후술하는 바와 동일하게 또는 일부 변형된 방법을 통해 동작하도록 설계된 것일 수 있다.2 is a diagram for explaining an embodiment of an operation of a delivery processing unit and a service function unit. 2 shows only one delivery processing unit 130 and one service function unit 135 corresponding thereto, but this is for convenience of description, and does not exclude the presence of other delivery processing units and other service function units. Other transfer processing units of FIG. 1, for example, second to nth transfer processing units 130-2 to 130-n, and corresponding second to nth service functions 135-2 to 135-n. ) Also, it may be designed to operate in the same manner as described below or through a partially modified method.
서비스 분류부(121)는 패킷(20)을 수신하고, 수신한 패킷(20)을 미리 정의된 분류 규칙에 따라 분류할 수 있다. 또한, 서비스 분류부(121)는 필요에 따라서 수신한 패킷(20)의 복호화를 수행하거나, 송신할 패킷에 대한 암호화를 더 수행할 수도 있다.The
일 실시예에 의하면, 서비스 분류부(121)는 분류 결과에 따라서 수신한 패킷(20)의 전부 또는 일부에 네트워크 서비스 헤더(31)를 각각 부가하여 패킷(20)에 대한 캡슐화(encapsulation)를 수행함으로써, 네트워크 서비스 헤더(31)가 부가되어 캡슐화된 패킷(30, 이하 캡슐화 패킷)을 획득할 수 있게 된다. 이에 따라서, 트래픽 흐름 내의 패킷에 식별자가 마킹될 수 있게 된다. 캡슐화 패킷(30)은 적어도 하나의 전달 처리부(130-1 내지 130-n 중 적어도 하나)로 전달될 수 있다. 예를 들어, 캡슐화 패킷(30)은 처음에는 제1 전달 처리부(130-1)로 전달되고, 이후 순차적으로 또는 비순차적으로 제2 전달부 내지 제n 전달부(130-1 내지 130-n) 중 적어도 하나로 전달될 수도 있다.According to an embodiment, the
도 3은 네트워크 서비스 헤더의 일 실시예에 대한 블록도이다.3 is a block diagram of an embodiment of a network service header.
도 3을 참조하면, 네트워크 서비스 헤더(31)는 기본 헤더(32), 서비스 경로 헤더(34), 및 콘텍스트 헤더(36)를 포함할 수 있다. 기본 헤더(32)는 네트워크 서비스 헤더(31)와 관련된 각종 정보를 포함할 수 있다. 예를 들어, 기본 헤더(32)는 네트워크 서비스 헤더(31)의 버전, 패킷(20)의 종류, 전달 처리부(130-1 내지 130-n)의 최대 개수, 네트워크 서비스 헤더(31)의 총 길이, 메타 데이터의 타입 및/또는 캡슐화된 데이터의 프로토콜 타입 등을 포함할 수 있다. 서비스 경로 헤더(34)는 수신 패킷(20)을 처리하기 위한 경로(SFP: Service Function Path)를 식별하기 위한 정보인 서비스 경로 식별자(34-1)와 처리될 서비스 기능을 식별하기 위한 서비스 인덱스(34-2)를 포함할 수 있다. 서비스 인덱스(34-2)는 1 이상의 숫자를 포함할 수 있다. 이 경우, 서비스 인덱스(34-2)는 서비스 기능부(135)가 패킷(30)을 처리할 때마다 1씩 감소됨으로써, 해당 패킷(30)에 대해 서비스 기능의 처리가 몇 회 수행되었는지 확인 가능하게 할 수 있다. 서비스 인덱스(34-2)의 차감은 서비스 기능부(135)에 의해 수행될 수 있다. 콘텍스트 헤더(36)에는 콘텍스트 데이터와 같은 적어도 하나의 메타데이터가 마킹 및 기록될 수 있다. 실시예에 따라서, 콘텍스트 헤더(36)는 고정 길이 콘텍스트 헤더(Fixed-Length Context Header)이거나 가변 길이 콘텍스트 헤더(Variable-Length Context Header)일 수도 있으며, 가변 길이 메타데이터(Variable-Length Metadata)일 수도 있다. 일 실시예에 의하면, 콘텍스트 헤더(36)에는 서비스 기능부(135)가 패킷(32)을 수신한 시간인 제2 수신 시간(t22) 등이 마킹될 수 있다. 상황에 따라, 기본 헤더(32), 서비스 경로 헤더(34), 및 콘텍스트 헤더(36) 중 적어도 하나는 생략될 수도 있다.Referring to FIG. 3, the network service header 31 may include a
서비스 분류부(121)는 부가된 네트워크 서비스 헤더(31)를 제거할 수도 있다. 구체적으로, 제1 전달 처리부 내지 제n 전달 처리부(130-1 내지 130-n)와, 이에 대응하는 제1 서비스 기능부 내지 제n 서비스 기능부(135-1 내지 135-n)에 의해 캡슐화 패킷(30)에 대한 예정된 서비스 기능이 모두 처리된 경우, 패킷(30)의 외부의 장치(10, 90)로 전달될 수 있으며, 서비스 분류부(121)는 외부의 장치(10, 90)로 패킷이 전달되기 전에 패킷(30)으로부터 네트워크 서비스 헤더(31)를 제거할 수도 있다. 실시예에 따라서, 서비스 분류부(121) 이외의 다른 요소가 네트워크 서비스 헤더(31)를 제거하는 것도 가능하다. 일례로, 제n 전달 처리부(130-n)가 네트워크 서비스 헤더(31)를 제거하는 것도 가능하고, 물리적 또는 논리적으로 별도로 마련된 다른 네트워크 장치가 네트워크 서비스 헤더(31)를 제거하는 것도 가능하다.The
도 2에 도시된 바에 따르면, 전달 처리부(130)는 선택부(131) 및 제1 시간 기록부(132)를 포함할 수 있으며, 필요에 따라 지연 처리부(140)를 더 포함할 수 있다.As shown in FIG. 2, the transfer processing unit 130 may include a selection unit 131 and a first time recording unit 132, and may further include a
선택부(131)는 수신한 캡슐화 패킷(30)의 네트워크 서비스 헤더(31)의 정보를 기반으로 대응하는 서비스 기능부(135)에 캡슐화 패킷(30)을 전달할지 여부를 결정하고, 결정 결과에 따라서 패킷(30)을 서비스 기능부(135)에 전달할 수 있다. 상황에 따라서, 선택부(131)는 네트워크 서비스 헤더(31)의 정보에 따라서 다른 전달 처리부(130-2 내지 130-n)로 캡슐화 패킷(30)을 전달할 수도 있다. 이 경우, 다른 전달 처리부(130-2 내지 130-n)로의 패킷(30)의 전달은 서비스 기능부(135)로의 패킷(30) 전달과 무관하게 수행될 수도 있고, 또는 서비스 기능부(135)로의 패킷(30) 전달과 더불어 수행될 수도 있다. 후자의 경우, 다른 전달 처리부(130-2 내지 130-n)로의 패킷(30)의 전달은 서비스 기능부(135)로의 패킷(30) 전달과 동시에 수행될 수도 있고 순차적으로 수행될 수도 있다.The selection unit 131 determines whether to transmit the encapsulation packet 30 to the corresponding service function unit 135 based on the information in the network service header 31 of the received encapsulation packet 30, and Accordingly, the packet 30 can be delivered to the service function unit 135. Depending on the situation, the selection unit 131 may transmit the encapsulation packet 30 to other transfer processing units 130-2 to 130-n according to the information of the network service header 31. In this case, the transfer of the packet 30 to the other transfer processing units 130-2 to 130-n may be performed regardless of the transfer of the packet 30 to the service function unit 135, or the service function unit 135 It may be performed in conjunction with the delivery of the packet 30 to. In the latter case, the transfer of the packet 30 to the other transfer processing units 130-2 to 130-n may be performed simultaneously with the transfer of the packet 30 to the service function unit 135 or may be performed sequentially.
일 실시예에 의하면, 선택부(131)는 수신한 패킷(30, 32)이 서비스 분류부(121)로부터 전달된 패킷인지 서비스 기능부(135)를 경유하여 되돌아온 패킷인지 여부를 판단할 수도 있다. 즉, 선택부(131)는 수신한 패킷(30, 32)이 처음으로 수신한 패킷(30)인지 아니면 기 수신했던 패킷(32)인지 여부를 판단하고, 판단 결과 처음으로 수신한 패킷(30)인 경우 패킷(30)을 서비스 기능부(135)로 전달하거나 및/또는 다음 전달 처리부(130-2 내지 130-n)로 전달하고, 기 수신했던 패킷(32)인 경우 패킷(32)을 다음 전달 처리부(130-2 내지 130-n)로 전달할 수 있다. According to an embodiment, the selection unit 131 may determine whether the received
제1 시간 기록부(132)는 선택부(131)에 의해 서비스 기능부(135)로 캡슐화 패킷(30)이 전달되는 경우, 서비스 기능부(135)로 패킷(30)이 전달된 시점의 시각(t11, 이하 제1 송신 시간)을 판단하고 이를 일시적 또는 비일시적으로 기록할 수 있다. 이 경우, 제1 시간 기록부(132)는 제1 송신 시간(t1)을 저장부(150, 151)에 저장할 수도 있고, 또는 네트워크 서비스 헤더(31), 일례로 콘텍스트 헤더(36)에 기록할 수도 있다. 일 실시예에 의하면, 저장부(150)는 전달 처리부(130) 내에 마련된 것일 수도 있다. 예를 들어, 저장부(150)는 프로그래머블 스위치(programmable switch)로 구현된 전달 처리부(130)에 장착된 반도체 메모리 장치 또는 자기디스크 저장 장치를 포함할 수도 있다. 또한, 저장부(151)는 전달 처리부(130)와 별도로 마련되는 것도 가능하다. 이 경우, 저장부(151)는 별도로 데이터의 저장을 위해 구축된 컴퓨터 장치 또는 외부 저장 매체(범용 직렬 버스 메모리 장치나 외장형 하드디스크 장치 등) 등을 포함할 수 있다. 일 실시예에 의하면, 제1 시간 기록부(132)는 프로그래밍 가능한 데이터 평면의 타임 스탬핑 기능을 이용하여 제1 송신 시간(t11)을 저장부(150, 151)에 및/또는 네트워크 서비스 헤더(31), 일례로 콘텍스트 헤더(36)에 기록할 수 있다. When the encapsulation packet 30 is transmitted to the service function unit 135 by the selection unit 131, the first time recording unit 132 is the time at which the packet 30 is transmitted to the service function unit 135 ( t11, hereinafter, the first transmission time) may be determined and recorded temporarily or non-temporarily. In this case, the first time recording unit 132 may store the first transmission time t1 in the storage units 150 and 151, or may record it in the network service header 31, for example, the
또한, 제1 시간 기록부(132)는 서비스 기능부(135)로부터 처리된 패킷(32)을 수신하는 경우, 처리된 패킷(32)의 수신 시간(t12, 이하 제1 수신 시간)을 저장부(150, 151) 및 네트워크 서비스 헤더(31) 중 적어도 하나에 일시적으로 또는 비일시적으로 저장할 수도 있다. 이 경우에도 제1 시간 기록부(132)는 프로그래밍 가능한 데이터 평면의 타임 스탬핑 기능을 이용하여 제1 수신 시간(t12)을 저장부(150, 151) 및/또는 네트워크 서비스 헤더(31)에 저장할 수도 있다.In addition, the first time recording unit 132, when receiving the processed
지연 처리부(140)는 서비스 처리의 지연 여부 또는 장애 발생 여부 등을 판단할 수 있다. 이에 대해서는 후술하도록 한다.The
서비스 기능부(135)는 캡슐화 패킷(30)에 대해 미리 정의된 서비스 기능을 처리하고, 서비스 기능이 처리된 패킷(32, 이하 처리된 패킷)을 전달 처리부(130)로 다시 전송할 수 있다. 여기서, 서비스 기능부(135)가 제공하는 서비스 기능은 방화벽, 패킷 필터링, 심층 패킷 분석(DPI: Deep packet inspection), 네트워크 주소 번역(NAT: Network Address Translation), TCP(Transmission Control Protocol) 최적화, 침입 탐지, 로드 밸런서 또는 가상화 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.The service function unit 135 may process a predefined service function for the encapsulation packet 30 and transmit the packet 32 (hereinafter, processed packet) in which the service function is processed to the transfer processing unit 130 again. Here, the service functions provided by the service function unit 135 are firewall, packet filtering, deep packet inspection (DPI), network address translation (NAT), transmission control protocol (TCP) optimization, and intrusion. Detection, load balancer, or virtualization may be included, but are not limited thereto.
일 실시예에 의하면, 서비스 기능부(135)는 시간을 기록하기 위한 제2 시간 기록부(136)를 포함할 수 있다. 제2 시간 기록부(136)는 캡슐화 패킷(30)을 수신한 시간(t22, 이하 제2 수신 시간)을 네트워크 서비스 헤더(31), 전달처리부(130)의 저장부(150) 및 별도로 마련된 저장부(151) 중 적어도 하나에 기록할 수 있다. 예를 들어, 수신한 패킷(30)이 제어부(110)에 의해 타임 스탬핑이 수행되도록 설정된 패킷이라면, 제2 시간 기록부(136)는 타임 스탬핑 기능을 이용하여 제2 수신 시간(t22)을 네트워크 서비스 헤더(31)의 콘텍스트 헤더(36)에 마킹하여 기록하거나 및/또는 저장부(150, 151)에 마킹하여 저장할 수 있다. 또한, 제2 시간 기록부(136)는 서비스 기능 처리가 종료되고, 전달 처리부(30)로 처리된 패킷(32)이 전송될 때, 전송한 시각(t21, 이하 제2 송신 시간)을 네트워크 서비스 헤더(31), 전달처리부(130)의 저장부(150) 및 별도로 마련된 저장부(151) 중 적어도 하나에 기록할 수 있다. 예를 들어, 제2 시간 기록부(136)는 타임 스탬핑 기능을 이용하여 제2 수신 시간(t22)을 네트워크 서비스 헤더(31)의 콘텍스트 헤더(36) 및 저장부(150, 151) 중 적어도 하나에 마킹 하여 기록할 수 있다. 제2 수신 시간(t22) 및 제2 전송 시간(t21) 중 적어도 하나는 일시적으로 저장될 수도 있고, 또는 비일시적으로 저장될 수도 있다.According to an embodiment, the service function unit 135 may include a second time recording unit 136 for recording time. The second time recording unit 136 stores the time at which the encapsulation packet 30 is received (t22, hereinafter, the second reception time), a network service header 31, a storage unit 150 of the transfer processing unit 130, and a storage unit provided separately. It can be recorded in at least one of (151). For example, if the received packet 30 is a packet set to perform time stamping by the
도 4는 지연 처리부의 동작의 일 실시예를 설명하기 위한 제1 도이고, 도 5는 지연 처리부의 동작의 일 실시예를 설명하기 위한 제2 도이다.FIG. 4 is a first diagram illustrating an operation of a delay processing unit according to an exemplary embodiment, and FIG. 5 is a second diagram illustrating an operation of a delay processing unit according to an exemplary embodiment.
도 4 및 도 5에 도시된 바를 참조하면, 전달 처리부(130)의 지연 처리부(140)는 저장부(150, 151) 및 네트워크 서비스 헤더(31) 중 적어도 하나에 기록된 시간(t11 내지 t22)들을 기반으로 지연 시간(d1 내지 d3)을 연산하여 측정하고, 연산 및 측정 결과를 기반으로 서비스 처리의 지연 여부나 장애 발생 여부 등을 판단할 수 있다. 이와 같은 지연 처리부(140)의 동작에 의해 전달 처리부(130)는 지연 시간 측정 장치로 동작할 수 있게 된다.4 and 5, the
실시예에 따라서, 지연 시간 측정 시스템(100)은, 도 4에 도시된 바와 같이, 전달 처리부(130)와 별도로 마련된 지연 처리부(145)를 포함할 수도 있다. 이 경우, 전달 처리부(130)의 지연 처리부(140)는 생략될 수도 있다. 지연 처리부(145)는 전달 처리부(130)와 물리적으로 구분되어 마련될 수도 있으며, 예를 들어, 컴퓨팅 장치 등을 이용하여 구현될 수 있다. 실시예에 따라, 별도로 마련된 지연 처리부(145)는 상술한 제어부(110)나 서비스 처리부(120)에 의해 구현되는 것도 가능하다. 또한, 별도로 마련된 지연 처리부(145)는 전달처리부(130)와 논리적으로 구분되는 것일 수도 있다. 전달 처리부(130)와 별도로 마련된 지연 처리부(145)는, 후술하는 바와 같이 전달 처리부(130)의 지연 처리부(140)의 동작과 동일하거나 일부 변형된 방법으로 동작할 수 있다.According to an embodiment, the delay
일 실시예에 따르면, 지연 처리부(140)는, 도 5에 도시된 바와 같이, 지연 시간 연산부(141), 비교부(143), 및 결과처리부(143)를 포함할 수 있다.According to an embodiment, the
먼저, 지연 시간 연산부(141)는 제1 송신 시간 내지 제4 송신 시간(t11, t12, t21, t22) 중 적어도 둘을 획득할 수 있다. 보다 구체적으로 예를 들어, 지연 시간 연산부(141)는, 저장부(150, 151)로부터 제1 송신 시간(t11) 및 제1 수신 시간(t12)을 호출하고, 네트워크 서비스 헤더(31), 일례로 콘텍스트 헤더(36)에 기록된 제2 송신 시간(t21) 및 제2 수신 시간(t22)을 읽어들일 수 있다. 실시예에 따라, 지연 시간 연산부(141)는, 이들 시간(t11 내지 t22) 모두를 저장부(150, 151)로부터 호출하는 것도 가능하고 또는 이들 시간(t11 내지 t22)을 모두 네트워크 서비스 헤더(31)로부터 독출하는 것도 가능하다.First, the delay time calculator 141 may obtain at least two of the first to fourth transmission times t11, t12, t21, and t22. More specifically, for example, the delay time calculation unit 141 calls the first transmission time t11 and the first reception time t12 from the storage units 150 and 151, and the network service header 31, for example, The second transmission time t21 and the second reception time t22 recorded in the
순차적으로 지연 시간 연산부(141)는 획득한 제1 송신 시간 내지 제4 송신 시간(t11, t12, t21, t22) 중 적어도 둘을 기반으로 연산을 수행하여, 왕복 지연 시간(Round-trip Delay, d1), 처리 지연 시간(Processing Delay, d2) 및 전송 지연 시간(Propagation Delay, d3) 중 적어도 하나를 획득할 수 있다.The delay time calculating unit 141 sequentially performs an operation based on at least two of the acquired first to fourth transmission times (t11, t12, t21, t22), and the round-trip delay (d1) ), processing delay (d2), and transmission delay (Propagation Delay, d3).
왕복 지연 시간(d1)은 전달처리부(130)에서 전송된 패킷(30)이 서비스 기능부(135)를 거쳐 다시 해당 전달처리부(130)로 되돌아오는데 소요되는 시간을 의미한다. 지연 시간 연산부(141)는 전달처리부(130)가 캡슐화 패킷(30)을 전송할 때의 시간인 제1 송신 시간(t11)과, 전달처리부(130)가 처리된 패킷(32)을 수신할 때의 시간인 제1 수신 시간(t12) 사이의 차이를 연산함으로써, 왕복 지연 시간(d1)을 연산할 수 있다. 실시예에 따라, 제1 송신 시간(t11)과 제1 수신 시간(t12) 간의 차이에 소정의 가중치나 보정 값을 더 부가하여 왕복 지연 시간(d1)이 연산 될 수도 있다.The round trip delay time d1 refers to a time required for the packet 30 transmitted from the transfer processing unit 130 to return to the corresponding transfer processing unit 130 through the service function unit 135. The delay time calculation unit 141 includes a first transmission time t11, which is a time when the transmission processing unit 130 transmits the encapsulated packet 30, and a time when the transmission processing unit 130 receives the processed
처리 지연 시간(d2)은 서비스 기능부(135)가 서비스 기능을 처리하는 동안에 경과된 시간을 의미한다. 지연 시간 연산부(141)는 저장부(150, 151)에 저장되거나 네트워크 서비스 헤더(31)에 마킹 된 제2 수신 시간(t22) 및 제2 송신 시간(t21) 간의 차이를 연산함으로써 처리 지연 시간(d2)을 연산할 수 있다. 처리 지연 시간(d2)도 제2 수신 시간(t22) 및 제2 송신 시간(t21) 간의 차이에 가중치나 보정 값을 더 부가하여 획득될 수도 있다.The processing delay time d2 refers to a time that has elapsed while the service function unit 135 processes the service function. The delay time calculation unit 141 calculates the difference between the second reception time t22 and the second transmission time t21 stored in the storage units 150 and 151 or marked on the network service header 31, so that the processing delay time ( d2) can be calculated. The processing delay time d2 may also be obtained by adding a weight or a correction value to the difference between the second reception time t22 and the second transmission time t21.
전송 지연 시간(d3)은 패킷(30, 32)이 전달처리부(130) 및 서비스 기능부(135) 사이에서 전달되는데 소요된 시간을 의미한다. 다시 말해서, 전송 지연 시간(d3)은 전달처리부(130) 및 서비스 기능부(135) 사이의 링크에서 경과된 시간을 의미한다. 지연 시간 연산부(141)는 왕복 지연 시간(d1)에서 처리 지연 시간(d2)을 차감함으로써 전송 지연 시간(d3)을 연산할 수 있다.The transmission delay time d3 refers to a time taken for the
상술한 바에 따라, 지연 시간 측정 시스템(100)는 왕복 지연 시간(d1)뿐만 아니라 처리 지연 시간(d2)이나 전송 지연 시간(d3) 등도 계측할 수 있게 되고, 이에 따라 서비스 기능부(135)의 장애 발생 여부나 전달 처리부(130)와 서비스 기능부(135) 사이의 링크에서의 장애 발생 여부 등을 보다 정확하게 상세하게 진단 및 결정할 수 있게 된다. As described above, the delay
일 실시예에 의하면, 연산된 왕복 지연 시간(d1), 처리 지연 시간(d2), 및 전송 지연 시간(d3) 중 적어도 하나는 비교부(142)로 전달될 수 있다.According to an embodiment, at least one of the calculated round trip delay time d1, processing delay time d2, and transmission delay time d3 may be transmitted to the
비교부(142)는 지연 시간 연산부(141)로부터 수신한 왕복 지연 시간(d1), 처리 지연 시간(d2), 및 전송 지연 시간(d3) 중 적어도 하나를, 각각에 대응하는 임계 값(v1, v2, v3)과 비교하고, 이에 따른 비교 결과를 출력할 수 있다. 예를 들어, 비교부(142)는 왕복 지연 시간(d1)을 기 설정된 제1 임계 값(v1)과 비교하고, 처리 지연 시간(d2)을 기 설정된 제2 임계 값(v2)과 비교하며, 및/또는 전송 지연 시간(d3)을 기 설정된 제3 임계 값(v3)과 비교하여 비교 결과를 획득할 수 있다. 이들 임계 값(v1, v2, v3)은 사전에 지연 시간 측정 시스템(100)의 설계자 또는 사용자에 의해 정의된 것일 수도 있다. 비교 결과는 결과 처리부(143)로 전달될 수 있다.The
결과 처리부(143)는 비교부(142)의 비교 결과에 따라서 소정의 동작을 수행할 수 있다. 결과 처리부(143)는 비교 결과에 따른 지연 또는 장애 여부를 판단하고, 판단된 지연 또는 장애에 대응하는 처리 규칙(152)의 존재 여부를 판단할 수 있다. 만약 발생된 지연에 대응하여 사전에 정의된 처리 규칙(152)이 부재하다면, 결과 처리부(143)는 제어부(110)로 새로운 처리 규칙(112)을 요청하는 메시지를 전송할 수 있다. 이 경우, 제어부(110)가 적절하게 처리 규칙(112)을 생성 또는 수정할 수 있도록 왕복 지연 시간(d1), 처리 지연 시간(d2) 및 전송 지연 시간(d3) 중 적어도 하나를 요청 메시지와 함께 제어부(110)로 전송할 수도 있다. 이 경우, 제어부(110)는 네트워크 정책 등에 따라 새롭게 획득한 처리 규칙(112)을 전달 처리부(130) 및/또는 서비스 기능부(135)로 전달함으로써 전달 처리부(130) 및/또는 서비스 기능부(135)가 지연 또는 장애에 대응하여 적절하게 동작하도록 할 수 있다. 이 경우, 새로 획득한 처리 규칙(112)은 장애 대처 테이블 규칙을 포함할 수 있으며, 장애 대처 테이블 규칙은, 전달 처리부(130)의 저장부(150) 등에 저장되는 방식으로 전달 처리부(130)에 제공되거나 및/또는 별도의 저장부(151)에 기록되고 전달 처리부(130)의 요청에 따라 전달 처리부(130)로 전달됨으로써, 전달 처리부(130)가 장애에 대응하여 적절하게 동작하게 할 수 있다. 구체적으로 예를 들어, 전달 처리부(130)는 테이블 규칙에 따라서 서비스 기능(135)으로의 패킷(30) 전송을 취소하고 다른 전달 처리부(130-2 내지 130-n)로 패킷(30)을 전달하도록 할 수도 있다.The
반대로 만약 발생된 지연 또는 장애에 대해서 미리 정의된 처리 규칙(152)이 존재한다면, 결과 처리부(143)는 전달 처리부(130) 및/또는 서비스 기능부(135)가 미리 정의된 처리 규칙(152)에 따른 동작을 수행하도록 할 수 있다. Conversely, if there is a pre-defined processing rule 152 for the delay or failure that has occurred, the
일 실시예에 하면, 만약 처리 지연 시간(d2)이 제2 임계 값(v2)보다 큰 경우, 결과 처리부(143)는 해당 서비스 기능부(135)에 문제가 발생했다고 판단하고, 이에 대응하는 전달 처리부(130)에 이와 같은 결과를 전달할 수 있다. 해당 전달 처리부(130)는, 저장부(150, 151)에 저장되거나 전달 처리부(130)에 기존에 삽입된 처리 규칙(152)에 따라서 동작을 수행할 수 있다. 예를 들어, 해당 전달 처리부(130)는 다른 서비스 기능부가 패킷(30)을 처리하도록, 다른 서비스 기능부에 대응하는 다른 전달 처리부로 수신한 또는 수신할 패킷(30)을 전달할 수도 있다. 이 경우, 다른 서비스 기능부는 지연 또는 장애가 발생한 서비스 기능부(135)와 동일한 서비스 기능을 처리하는 서비스 기능부일 수 있다. 다시 말해서, 제i 전달 처리부(130-i, i는 1 이상의 자연수)에 대응하는 서비스 기능부(135-i)의 처리 지연 시간(d2)이 임계 값(v2)을 초과하면, 제i 전달 처리부(130-i)는 기존에 수신하였거나 또는 계속해서 수신되고 있는 패킷(30)의 전부 또는 일부를 다른 제(i+k) 전달 처리부(130-i+k, k는 1 이상의 자연수)로 전달하고, 제(i+k) 전달 처리부(130-i+k)는 수신한 패킷(30)을 대응하는 제(i+k) 서비스 기능부(135-i+k)로 전달함으로써 패킷(30)에 대한 서비스 기능이 처리되도록 할 수 있다. 이와 같은 방법에 의해 처리 지연 시간(d2)이 긴 서비스 기능부(135)의 로드가 분산될 수 있게 된다.In one embodiment, if the processing delay time d2 is greater than the second threshold value v2, the
다른 실시예에 의하면, 만약 전송 지연 시간(d3)이 제3 임계 값(v3)보다 큰 경우라면, 전달 처리부(130) 및 서비스 기능부(135) 사이의 링크에 장애가 있을 가능성이 높으므로, 결과 처리부(143)는 해당 전달 처리부(130)에 이를 전달하고, 전달 처리부(130)는 전달 처리부(130) 및 대응하는 서비스 기능부(135)를 연결하는 다른 경로(다른 링크)가 존재하는지 여부를 판단하고, 다른 경로가 존재한다면, 패킷(30, 32)을 다른 경로로 우회하여 전달하도록 할 수 있다. 만약 다른 경로가 존재하지 않는다면, 패킷(30)을 다른 서비스 기능부(135-2 내지 135-n 중 적어도 하나)가 처리하도록 다른 전달 처리부(130-2 내지 130-n 중 적어도 하나)로 전달할 수도 있다. 이와 같은 방법에 의하면, 제어부(110)의 개입 없이도 프로그래밍이 가능한 데이터 평면 하에서 링크를 우회하라는 규칙을 즉시 수행할 수 있게 되므로, 시스템(100) 또는 각각의 전달 처리부(140-1 내지 140-n)이 자동으로 보다 신속하게 장애에 대처할 수 있게 된다.According to another embodiment, if the transmission delay time d3 is greater than the third threshold value v3, there is a high possibility that there is a failure in the link between the delivery processing unit 130 and the service function unit 135, and the result The
이하, 도 6 내지 도 9를 참조하여 서비스 기능의 지연 시간 측정 방법의 여러 실시예에 대해서 설명하도록 한다.Hereinafter, various embodiments of a method for measuring a delay time of a service function will be described with reference to FIGS. 6 to 9.
도 6은 서비스 기능의 지연 시간 측정 방법의 일 실시예에 대한 제1 흐름도이고, 도 7은 서비스 기능의 지연 시간 측정 방법의 일 실시예에 대한 제2 흐름도이다. 도 8은 서비스 기능의 지연 시간 측정 방법의 일 실시예에 대한 제3 흐름도이다.6 is a first flowchart illustrating a method of measuring a delay time of a service function, and FIG. 7 is a second flowchart illustrating a method of measuring a delay time of a service function. 8 is a third flowchart of an embodiment of a method for measuring a delay time of a service function.
도 6에 도시된 바에 의하면, 먼저 외부의 물리적 장치 또는 가상적 장치로부터 패킷이 입력되고 이에 따라 지연 시간 측정 시스템, 일례로 서비스 분류부가 패킷을 획득하게 된다(300). 여기서, 지연 시간 측정 장치는 물리적 또는 가상적으로 패킷을 송수신할 수 있는 적어도 하나의 전자 장치(일례로 서버용 컴퓨터 장치, 네트워크 스위치 및/또는 네트워크 허브 등)를 포함하여 구현될 수 있다.As shown in FIG. 6, first, a packet is input from an external physical device or a virtual device, and accordingly, a delay time measurement system, for example, a service classifier, obtains the packet (300). Here, the delay time measurement device may be implemented by including at least one electronic device (for example, a server computer device, a network switch, and/or a network hub, etc.) capable of physically or virtually transmitting and receiving packets.
지연 시간 측정 시스템, 일례로 서비스 분류부는 수신한 패킷을 분류하고, 패킷에 네트워크 서비스 헤더를 부가하여 패킷을 캡슐화할 수 있다(302). 네트워크 서비스 헤더가 부가된 캡슐화 패킷은 서비스 분류부로부터 적어도 하나의 전달 처리부, 일례로 제1 전달 처리부로 전달될 수 있다(303, 304).The delay time measurement system, for example, the service classification unit may classify the received packet and encapsulate the packet by adding a network service header to the packet (302). The encapsulated packet to which the network service header is added may be transmitted from the service classification unit to at least one transmission processing unit, for example, the first transmission processing unit (303, 304).
제1 전달 처리부는 캡슐화 패킷에 대해서 서비스 기능의 처리 여부를 결정할 수 있다(306). The first transfer processing unit may determine whether to process a service function for the encapsulated packet (306 ).
만약 서비스 기능의 처리를 수행할 필요가 존재한다면(306의 예), 제1 전달 처리부는, 제1 전달 처리부에 대응하는 서비스 기능부, 일례로 제1 서비스 기능부로 캡슐화 패킷을 전달하고, 이와 동시에 또는 순차적으로 제1 서비스 기능부로 캡슐화된 패킷이 전달된 시각(즉 제1 송신 시간)을 기록할 수 있다. 제1 송신 시간은, 실시예에 따라서, 별도로 마련된 저장부(일례로 제1 전달 처리부를 위해 할당된 메모리 공간)에 저장될 수도 있고, 및/또는 네트워크 서비스 헤더의 일부 공간(일례로 콘텍스트 헤더)에 저장될 수도 있다.If there is a need to perform processing of the service function (example of 306), the first delivery processing unit delivers the encapsulated packet to the service function unit corresponding to the first delivery processing unit, for example, the first service function unit, and at the same time Alternatively, the time at which packets encapsulated to the first service function unit are sequentially delivered (ie, the first transmission time) may be recorded. The first transmission time may be stored in a separately provided storage unit (eg, a memory space allocated for the first transmission processing unit), and/or a partial space of the network service header (eg, a context header), depending on the embodiment. It can also be stored in.
제1 서비스 기능부는 캡슐화 패킷을 수신하고 캡슐화 패킷에 대해 서비스 기능을 처리할 수 있다(312). 이와 동시에 또는 순차적으로 제1서비스 기능부는 캡슐화 패킷의 수신 시간(즉, 제2 수신 시간)을 기록할 수 있다. 실시예에 따라서, 제1 서비스 기능부는 제2 수신 시간을 별도로 마련된 저장부에 저장할 수도 있고, 및/또는 네트워크 서비스 헤더의 일 공간(일례로 콘텍스트 헤더)에 마킹하여 저장할 수도 있다.The first service function unit may receive the encapsulation packet and process a service function on the encapsulation packet (312). Simultaneously or sequentially, the first service function may record the reception time (ie, the second reception time) of the encapsulated packet. Depending on the embodiment, the first service function unit may store the second reception time in a separate storage unit, and/or may be marked and stored in a space of the network service header (for example, a context header).
제1 서비스 기능부는 서비스 기능의 처리가 종료되면, 캡슐화 패킷을 다시 대응하는 전달 처리부, 즉 제1 전달 처리부로 돌려보낼 수 있다(316). 캡슐화 패킷의 전송과 선행해서 또는 동시에 제1 서비스 기능부는 전송 시간(즉, 제2 송신 시간)을 기록할 수 있다. 실시예에 따라, 제1 서비스 기능부는 제2 수신 시간을 별도의 물리적 저장부에 저장할 수도 있고, 및/또는 네트워크 서비스 헤더의 일 공간(일례로 콘텍스트 헤더)에 마킹하여 저장할 수도 있다.When the processing of the service function is terminated, the first service function unit may return the encapsulated packet back to a corresponding transmission processing unit, that is, the first transmission processing unit (316). Prior to or concurrently with the transmission of the encapsulated packet, the first service function may record the transmission time (i.e., the second transmission time). Depending on the embodiment, the first service function unit may store the second reception time in a separate physical storage unit, and/or may be marked and stored in a space of the network service header (for example, a context header).
도 7에 도시된 바와 같이, 제1 전달 처리부는 서비스 기능의 처리가 완료된 캡슐화 패킷을 제1 서비스 기능부로부터 수신하면, 이에 응해 패킷을 수신한 시각, 즉 제1 수신 시간을 기록할 수 있다(318). 실시예에 따라서, 제1 수신 시간은 별도로 마련된 저장부 및/또는 네트워크 서비스 헤더의 일 위치에 기록될 수 있다.As shown in FIG. 7, when the first transfer processing unit receives the encapsulated packet in which the service function has been processed from the first service function unit, it may record the time at which the packet is received, that is, the first reception time ( 318). According to an embodiment, the first reception time may be recorded in a separate storage unit and/or a location of a network service header.
지연 시간 측정 시스템, 일례로 제1 전달 처리부는 제1 송신 시간, 제1 수신 시간, 제2 송신 시간 및 제2 수신 시간 중 적어도 하나를 이용하여 적어도 하나의 지연 시간을 연산할 수 있다(320). 실시예에 따라서, 지연 시간의 연산은 별도로 마련된 다른 논리적 요소 또는 물리적 장치에 의해 수행될 수도 있다.The delay time measurement system, for example, the first transmission processing unit may calculate at least one delay time using at least one of a first transmission time, a first reception time, a second transmission time, and a second reception time (320). . Depending on the embodiment, the calculation of the delay time may be performed by a separate logical element or a physical device.
적어도 하나의 지연 시간은, 왕복 지연 시간, 처리 지연 시간 및 전송 지연 시간 중 적어도 하나를 포함 가능하다. 왕복 지연 시간은 제1 송신 시간 및 제1 수신 시간의 차이를 연산하여 획득될 수 있고, 처리 지연 시간은 제2 수신 시간 및 제2 송신 시간의 차이를 연산하여 획득될 수 있으며, 전송 지연 시간은 왕복 지연 시간과 처리 지연 시간 사이의 차이를 연산하여 획득될 수 있다. 실시예에 따라, 이들의 차이에 보정 값 또는 가중치를 더 부가하여 이들 지연 시간을 연산하는 것도 가능하다.The at least one delay time may include at least one of a round trip delay time, a processing delay time, and a transmission delay time. The round trip delay time can be obtained by calculating the difference between the first transmission time and the first reception time, the processing delay time can be obtained by calculating the difference between the second reception time and the second transmission time, and the transmission delay time is It can be obtained by calculating the difference between the round trip delay time and the processing delay time. Depending on the embodiment, it is also possible to calculate these delay times by adding a correction value or a weight to the difference.
순차적으로 지연 시간과 임계 값이 상호 비교될 수 있다(322). 임계 값은 사용자나 설계자에 의해 사전이 미리 정의된 것일 수 있으며, 예를 들어 저장부 등에 저장된 것일 수 있다. 임계 값은 각각의 지연 시간에 대응하여 기 정의된 것일 수 있다. 즉, 실시예에 따라서, 임계 값은 왕복 지연 시간에 대응하는 제1 임계 값, 처리 지연 시간에 대응하는 제2 임계 값 및 전송 지연 시간에 대응하는 제3 임계 값 중 적어도 하나를 포함할 수 있다. 이에 따라 왕복 지연 시간은 제1 임계 값과 비교되고, 처리 지연 시간은 제2 임계 값과 비교되며, 및/또는 전송 지연 시간은 제3 임계 값과 비교될 수 있다. 실시예에 따라서, 제1 전달 처리부는 상술한 왕복 지연 시간, 처리 지연 시간 및 전송 지연 시간 모두에 대해 비교를 수행할 수도 있고, 또는 이들 중 하나 또는 둘에 대해서만 비교를 수행할 수도 있다.The delay time and the threshold value may be sequentially compared with each other (322). The threshold value may be a dictionary predefined by a user or a designer, and may be stored, for example, in a storage unit. The threshold value may be predefined corresponding to each delay time. That is, according to an embodiment, the threshold value may include at least one of a first threshold value corresponding to a round trip delay time, a second threshold value corresponding to a processing delay time, and a third threshold value corresponding to a transmission delay time. . Accordingly, the round trip delay time may be compared with the first threshold value, the processing delay time may be compared with the second threshold value, and/or the transmission delay time may be compared with the third threshold value. Depending on the embodiment, the first transfer processing unit may perform comparison on all of the aforementioned round trip delay time, processing delay time, and transmission delay time, or may perform comparison only on one or both of them.
지연 시간과 임계 값의 비교 결과, 지연 시간이 임계 값보다 큰 경우라면(322의 예), 순차적으로 처리 규칙의 존재 여부가 판단될 수 있다(324). 구체적으로 예를 들어, 처리 지연 시간이 제2 임계 값보다 큰 경우, 이에 대응하는 처리 규칙이 존재하는지 여부가 판단될 수 있고, 및/또는 전송 지연 시간이 제3 임계 값보다 큰 경우, 이에 대응하는 처리 규칙이 존재하는지 여부가 판단될 수 있다. 만약 복수의 지연 시간(예를 들어, 처리 지연 시간 및 전송 지연 시간)을 각각 임계 값과 비교하도록 구현된 경우라면, 제1 전달 처리부 또는 제1 서비스 기능부는, 실시예에 따라, 이들 지연 시간 중 어느 하나라도 임계 값보다 크면, 처리 규칙의 존재 여부를 판단하도록 설계될 수도 있고, 또는 이들 지연 시간 모두가 임계 값보다 크면, 처리 규칙의 존재 여부를 판단하도록 설계될 수도 있다.As a result of comparing the delay time and the threshold value, if the delay time is greater than the threshold value (YES in 322), it may be sequentially determined whether or not a processing rule exists (324). Specifically, for example, when the processing delay time is greater than the second threshold, it may be determined whether or not a corresponding processing rule exists, and/or when the transmission delay time is greater than the third threshold, the corresponding It may be determined whether or not there is a processing rule to be processed. If a plurality of delay times (for example, a processing delay time and a transmission delay time) are implemented to be compared with a threshold value, the first transfer processing unit or the first service function unit, depending on the embodiment, among these delay times If any one is greater than the threshold value, it may be designed to determine the presence or absence of the processing rule, or if all of these delay times are greater than the threshold value, it may be designed to determine the presence or absence of the processing rule.
만약 기존에 정의되거나 저장된 처리 규칙이 존재한다면(324의 예), 처리 규칙에 따라서 전달 처리부나 서비스 기능부 등이 동작하게 된다(326). 예를 들어, 처리 지연 시간이 제2 임계 값보다 크면, 이에 대응하는 처리 규칙에 따라서 제1 전달 처리부는 제1 서비스 기능부가 아닌 동일한 동작을 수행하는 다른 서비스 기능부(일례로 제2 서비스 기능부 등)로 패킷이 전송되도록 다른 전달 처리부(일례로 제2 전달 처리부 등)로 캡슐화 패킷을 전달할 수 있다. 다른 예를 들어, 전송 지연 시간이 제3 임계 값보다 크면, 이에 대응하는 처리 규칙에 따라서 제1 전달 처리부는 다른 링크를 검색하고 검색한 다른 링크를 통해서 패킷을 제1 서비스 기능부로 전송하거나 및/또는 다른 서비스 기능부가 패킷을 처리하도록 다른 서비스 기능부에 대응하는 다른 전달 처리부로 패킷을 전달할 수도 있다. 이외에도 전달 처리부나 서비스 기능부 등은 소정의 처리 규칙에 따라서 캡슐화 패킷의 전달 및 처리를 수행할 수 있다.If a previously defined or stored processing rule exists (example of 324), a delivery processing unit or a service function unit operates according to the processing rule (326). For example, if the processing delay time is greater than the second threshold value, the first delivery processing unit is not the first service function unit, but another service function unit that performs the same operation according to the corresponding processing rule (for example, the second service function unit). The encapsulated packet may be delivered to another delivery processing unit (for example, a second delivery processing unit, etc.) so that the packet is transmitted to each other. For another example, when the transmission delay time is greater than the third threshold value, the first transmission processing unit searches for another link and transmits the packet to the first service function unit through the searched other link according to a processing rule corresponding thereto. Alternatively, the packet may be delivered to another delivery processing unit corresponding to the other service function unit so that the other service function unit processes the packet. In addition, the delivery processing unit, the service function unit, and the like may deliver and process the encapsulated packet according to a predetermined processing rule.
반대로 정의되거나 저장된 처리 규칙이 존재하지 않는다면(324의 아니오), 새로운 처리 규칙이 마련될 수 있다(328). 상세하게 예를 들어, 제1 전달 처리부나 제1 서비스 처리부 등은 처리 규칙의 부재에 따라 직접 처리 규칙을 생성 또는 수정하거나, 처리 규칙을 생성 또는 수정할 수 있는 부분에 처리 규칙을 요청할 수 있다. 이 경우, 처리 규칙을 생성 또는 수정할 수 있는 부분은, 제1 전달 처리부나 제1 서비스 처리부와 논리적 또는 물리적으로 분리된 다른 부분을 포함할 수 있으며, 예를 들어, 제어부 등을 포함할 수 있다.Conversely, if the defined or stored processing rule does not exist (NO in 324), a new processing rule may be provided (328). In detail, for example, the first delivery processing unit or the first service processing unit may directly create or modify a processing rule according to the absence of a processing rule, or may request a processing rule from a portion capable of creating or modifying the processing rule. In this case, the part capable of generating or modifying the processing rule may include a first delivery processing unit or another part logically or physically separated from the first service processing unit, and may include, for example, a control unit.
제1 전달 처리부나 제1 서비스 기능부 등은 새로운 처리 규칙이 마련되면, 새로운 처리 규칙에 따라서 동작하게 된다(326). 만약 제1 전달 처리부나 제1 서비스 처리부와 논리적 또는 물리적으로 분리된 다른 부분(일례로 제어부)가 새로운 처리 규칙을 생성 또는 수정하는 경우라면, 제1 전달 처리부나 제1 서비스 처리부는 먼저 다른 부분이 전달하는 처리 규칙을 수신하고, 수신한 처리 규칙에 따라서 동작하게 된다.When a new processing rule is provided, the first transfer processing unit, the first service function unit, etc. operate according to the new processing rule (326). If the first delivery processing unit or another part logically or physically separated from the first service processing unit (eg, a control unit) creates or modifies a new processing rule, the first delivery processing unit or the first service processing unit It receives the processing rule to be transmitted, and operates according to the received processing rule.
반대로 서비스 기능의 처리를 수행할 필요가 없다면(306의 아니오), 제1 전달 처리부는 다음 전달 처리부, 일례로 제2 전달 처리부로 캡슐화된 패킷을 전달할 수 있다(308, 304). 이는 예정된 모든 전달 처리부에 캡슐화 패킷이 전달될 때까지 수행될 수도 있다. 예를 들어, N개의 전달 처리부가 설정된 경우, 제N 전달 처리부까지 최종적으로 캡슐화 패킷이 전달될 때가지 수행될 수 있다(307).Conversely, if there is no need to perform processing of the service function (No in 306), the first transfer processing unit may transfer the encapsulated packet to the next transfer processing unit, for example, the second transfer processing unit (308, 304). This may be performed until the encapsulation packet is delivered to all of the predetermined delivery processing units. For example, when N number of transmission processing units are set, the operation may be performed until finally the encapsulation packet is finally delivered to the Nth transmission processing unit (307).
한편, 지연 시간이 임계 값보다 작다면(322의 아니오), 제1 전달 처리부 또는 제1 서비스 기능부는 기 설계된 바에 따라 서비스 기능 처리 과정을 계속해서 수행할 수 있다.On the other hand, if the delay time is less than the threshold value (No in 322), the first transfer processing unit or the first service function unit may continue to perform the service function processing process as previously designed.
도 8에 도시된 바와 같이, 만약 패킷에 대한 서비스 기능 처리가 모두 종료되었다면(332의 예), 패킷에 캡슐화된 네트워크 서비스 헤더가 제거되고(334), 네트워크 서비스 헤더가 제거된 패킷은 외부로 출력될 수 있다(336). 여기서, 서비스 기능 처리가 모두 종료된 것은, 예정된 모든 서비스 기능부에 의해 순차적으로 또는 임의적 순서로 패킷이 처리된 것을 포함할 수 있으며, 다시 말해서, 모든 전달 처리부 중에서 패킷의 전달이 예정된 모든 전달 처리부로 캡슐화 패킷이 적어도 일 회 전달된 것을 포함할 수 있다. 네트워크 서비스 헤더의 제거는 서비스 분류부에 의해 수행될 수도 있고, 또는 네트워크 서비스 헤더의 제거를 위해 별도로 마련된 다른 부분에 의해 수행될 수도 있다. 여기서, 서비스 분류부는 네트워크 서비스 헤더를 패킷에 부착했던 서비스 분류부를 포함할 수 있다.As shown in FIG. 8, if all service function processing for a packet is finished (example of 332), the network service header encapsulated in the packet is removed (334), and the packet from which the network service header is removed is output to the outside. Can be (336). Here, the completion of all service function processing may include that packets are processed sequentially or in an arbitrary order by all of the predetermined service function units. In other words, among all the transmission processing units, all of the transmission processing units for which the packet is scheduled to be delivered. It may include that the encapsulation packet is delivered at least once. The removal of the network service header may be performed by the service classification unit, or may be performed by another part separately provided for removal of the network service header. Here, the service classification unit may include a service classification unit that attaches a network service header to the packet.
만약 패킷에 대한 서비스 기능 처리가 종료된 것이 아니라면(332의 아니오), 다음 순서의 전달 처리부(일례로 제2 전달 처리부)로 캡슐화 패킷이 전달될 수 있다(339, 304). 이후 다음 순서의 전달 처리부는 상술한 바와 동일한 과정을 거쳐서 지연 시간을 확인하고, 지연 발생 시 기 정의된 지연 또는 장애에 대한 처리 규칙을 이용하거나 또는 새로운 처리 규칙을 생성하여 이용할 수 있다(304 내지 326). 장애가 발생하지 않은 경우에는 다음 전달 처리부(일례로 제3 전달 처리부)로 캡슐화 패킷을 전달하거나 또는 네트워크 서비스 헤더를 정리하고 패킷을 외부로 출력할 수 있다. 상술한 과정은 필요로 하는 모든 전달 처리부(즉, 제1 내지 제n 전달 처리부 중 적어도 하나)에 패킷이 전달될 때까지 반복 수행될 수 있다.(338).If the service function processing for the packet is not finished (No in 332), the encapsulated packet may be delivered to the next delivery processing unit (for example, the second delivery processing unit) (339, 304). Thereafter, the next delivery processing unit may check the delay time through the same process as described above, and when a delay occurs, use a pre-defined delay or failure processing rule or create and use a new processing rule (304 to 326). ). If no failure has occurred, the encapsulated packet may be delivered to the next delivery processing unit (for example, a third transmission processing unit), or the network service header may be arranged and the packet may be output to the outside. The above-described process may be repeatedly performed until a packet is delivered to all required transfer processing units (ie, at least one of the first to n-th transfer processing units) (338).
한편, 도 6에 도시된 바와 같이, 패킷을 수신한 전달 처리부(일례로 제1 전달 처리부)에 대응하는 서비스 기능부가 패킷에 대한 처리를 수행할 필요가 없어, 전달 처리부가 다음 전달 처리부(일례로 제2 전달 처리부)로 캡슐화된 패킷을 전달한 경우(306의 아니오), 다음 전달 처리부는 서비스 기능 처리 여부에 따라서 그 다음 전달 처리부(일례로 제3 전달 처리부)로 패킷을 전달하거나(306, 308, 310) 또는 상술한 바와 동일하게 또는 일부 변형된 방법으로 지연 또는 장애 여부를 판단하고, 판단 결과에 따라 대응하는 서비스 기능부(일례로, 제3 서비스 기능부)로 패킷을 전달하거나, 기존에 존재하거나 또는 새로 생성된 처리 규칙에 따라 동작할 수 있다(312 내지 336). 제k 전달 처리부(k는 1 이상의 자연수) 역시 상술한 바와 동일하게 또는 변형된 방법으로 동작할 수 있다(304 내지 336).On the other hand, as shown in Fig. 6, the service function corresponding to the delivery processing unit (for example, the first transmission processing unit) that has received the packet does not need to perform processing on the packet, so that the delivery processing unit is When the encapsulated packet is delivered to the second delivery processing unit) (No in 306), the next delivery processing unit transmits the packet to the next delivery processing unit (for example, the third delivery processing unit) depending on whether or not the service function is processed (306, 308, 310) Or the same or a partially modified method as described above, determines whether there is a delay or failure, and delivers a packet to the corresponding service function unit (for example, a third service function unit) according to the determination result, or exists. Or, it may operate according to a newly created processing rule (312 to 336). The k-th transfer processing unit (k is a natural number greater than or equal to 1) may also operate in the same or modified manner as described above (304 to 336).
도 9는 전달 처리부의 동작의 일 실시예에 대한 흐름도이다.9 is a flowchart of an embodiment of an operation of a transfer processing unit.
도 9에 도시된 바에 의하면, 전달 처리부는 입력된 캡슐화 패킷이 기 입력되었던 패킷인지 아니면 새로운 패킷인지 여부에 따라 동작을 달리 할 수 있다.As shown in FIG. 9, the transfer processing unit may perform different operations according to whether the input encapsulation packet is a previously input packet or a new packet.
구체적으로 먼저 전달 처리부는 패킷을 획득하고(340), 획득한 패킷이 기존에 입력되었던 패킷인지 또는 새로운 패킷인지 여부를 확인할 수 있다(342). 여기서, 기존에 입력되었던 패킷은, 전달 처리부가 서비스 기능부로 전송했던 패킷을 포함할 수 있다.Specifically, first, the transfer processing unit may obtain a packet (340), and determine whether the acquired packet is a packet that has been previously input or a new packet (342). Here, the previously input packet may include a packet transmitted by the delivery processing unit to the service function unit.
만약 새로운 패킷이라면(342의 예), 전달 처리부는 서비스 기능부로 패킷을 전송하고, 이와 동시에 또는 순차적으로 패킷이 전송된 시각, 즉 제1 송신 시간을 기록할 수 있다(344). 서비스 기능부는 패킷의 수신에 응하여 서비스 기능 처리를 수행한다. 상술한 바와 같이 서비스 기능부는 패킷의 수신과 더불어 패킷의 수신 시간(즉, 제2 수신 시간)을 저장부나 패킷에 부가된 네트워크 서비스 헤더에 마킹할 수도 있다.If it is a new packet (YES in 342), the transfer processing unit may transmit the packet to the service function unit, and simultaneously or sequentially record the time at which the packet is transmitted, that is, the first transmission time (344). The service function unit performs service function processing in response to reception of the packet. As described above, the service function unit may mark the packet reception time (ie, the second reception time) in addition to the packet reception on the storage unit or the network service header added to the packet.
반대로 만약 새로운 패킷이 아니라면(342의 아니오), 전달 처리부는 패킷을 수신한 시간(즉, 제1 수신 시간)을 기록하고, 필요에 따라서 지연 시간(예를 들어, 왕복 지연 시간, 처리 지연 시간 및/또는 전송 지연 시간)을 연산하거나 수신한 패킷을 다른 전달 처리부로 전송할 수도 있다(346).Conversely, if it is not a new packet (No in 342), the transfer processing unit records the time at which the packet is received (i.e., the first reception time), and if necessary, the delay time (e.g., round trip delay time, processing delay time, and / Or a transmission delay time) may be calculated or the received packet may be transmitted to another transmission processing unit (346).
상술한 실시예에 따른 서비스 기능의 지연 시간 측정 방법은, 컴퓨터 장치에 의해 구동될 수 있는 프로그램의 형태로 구현될 수 있다. 여기서 프로그램은, 프로그램 명령, 데이터 파일 및 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 프로그램은 기계어 코드나 고급 언어 코드를 이용하여 설계 및 제작된 것일 수 있다. 프로그램은 상술한 방법을 구현하기 위하여 특별히 설계된 것일 수도 있고, 컴퓨터 소프트웨어 분야에서 통상의 기술자에게 기 공지되어 사용 가능한 각종 함수나 정의를 이용하여 구현된 것일 수도 있다. 또한, 여기서, 컴퓨터 장치는, 프로그램의 기능을 실현 가능하게 하는 프로세서나 메모리 등을 포함하여 구현된 것일 수 있으며, 필요에 따라 통신 장치를 더 포함할 수도 있다.The method for measuring a delay time of a service function according to the above-described embodiment may be implemented in the form of a program that can be driven by a computer device. Here, the program may include a program command, a data file, a data structure, or the like alone or in combination. The program may be designed and produced using machine code or high-level language code. The program may be specially designed to implement the above-described method, or may be implemented using various functions or definitions that are known and available to those skilled in the computer software field. In addition, here, the computer device may be implemented including a processor or a memory that enables the function of a program to be realized, and may further include a communication device if necessary.
상술한 프로그램은, 컴퓨터에 의해 판독 가능한 기록 매체에 기록될 수 있다. 컴퓨터에 의해 판독 가능한 기록 매체는, 예를 들어, 솔리드 스테이트 드라이브(SSD), 롬, 램 또는 플래시 메모리 등과 같은 반도체 저장 장치, 하드 디스크나 플로피 디스크 등과 같은 자기 디스크 저장 매체, 콤팩트 디스크나 디브이디 등과 같은 광 기록 매체, 플롭티컬 디스크 등과 같은 자기-광 기록 매체 및 자기 테이프 등 컴퓨터 등의 호출에 따라 실행되는 특정 프로그램을 저장 가능한 적어도 한 종류의 물리적 장치를 포함할 수 있다.The above-described program can be recorded on a computer-readable recording medium. The computer-readable recording medium includes, for example, a semiconductor storage device such as a solid state drive (SSD), ROM, RAM, or flash memory, a magnetic disk storage medium such as a hard disk or a floppy disk, and a compact disk or a DVD. It may include at least one type of physical device capable of storing a specific program executed according to a call such as a computer, such as a magnetic-optical recording medium such as an optical recording medium, a floptic disk, and the like, and a magnetic tape.
이상 서비스 기능의 지연 시간 측정 시스템, 장치 및 방법의 여러 실시예에 대해 설명하였으나, 서비스 기능의 지연 시간 측정 시스템, 장치 및 방법은 오직 상술한 실시예에 한정되는 것은 아니다. 해당 기술 분야에서 통상의 지식을 가진 자가 상술한 실시예를 기초로 수정 및 변형하여 구현 가능한 다양한 장치나 방법 역시 상술한 서비스 기능의 지연 시간 측정 시스템, 장치 및 방법의 일례가 될 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성 요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나 다른 구성 요소 또는 균등물에 의하여 대치되거나 또는 치환되더라도 상술한 서비스 기능의 지연 시간 측정 시스템, 장치 및 방법의 일례가 될 수 있다.Although various embodiments of the service function delay time measurement system, apparatus, and method have been described above, the service function delay time measurement system, apparatus, and method are not limited to the above-described embodiments. Various devices or methods that can be implemented by modifying and modifying based on the above-described embodiment by a person of ordinary skill in the art may also be an example of the system, device, and method for measuring the delay time of the service function described above. For example, the described techniques are performed in an order different from the described method, and/or components such as systems, structures, devices, and circuits described are combined or combined in a form different from the described method, or other components or Even if it is replaced or substituted by an equivalent, it may be an example of a system, apparatus, and method for measuring the delay time of the service function described above.
Claims (15)
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR20190127838 | 2019-10-15 | ||
| KR10-2019-0127838 | 2019-10-15 | ||
| KR10-2020-0098650 | 2020-08-06 | ||
| KR1020200098650A KR102425919B1 (en) | 2019-10-15 | 2020-08-06 | System, apparatus and method for measuring delay time of service function |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2021075683A1 true WO2021075683A1 (en) | 2021-04-22 |
Family
ID=75537370
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2020/010501 Ceased WO2021075683A1 (en) | 2019-10-15 | 2020-08-07 | System, device, and method for measuring delay time of service function |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2021075683A1 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20100073885A (en) * | 2008-12-23 | 2010-07-01 | 주식회사 케이티 | Network apparatus and method for monitoring real time service using timestamp |
| WO2014084465A1 (en) * | 2012-11-29 | 2014-06-05 | 아주대학교 산학협력단 | Guard time control method through propagation delay estimation and time synchronization acquisition |
| KR20160065010A (en) * | 2014-11-28 | 2016-06-08 | 주식회사 케이티 | Method and system of transmitting oam message for service function chaining in software defined network environment |
| KR20170113807A (en) * | 2016-03-25 | 2017-10-13 | 고려대학교 산학협력단 | Service function chaining system and the method for thereof |
| KR101962346B1 (en) * | 2017-06-14 | 2019-03-27 | 고려대학교 산학협력단 | Method for measuring path latency based on sdn |
-
2020
- 2020-08-07 WO PCT/KR2020/010501 patent/WO2021075683A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20100073885A (en) * | 2008-12-23 | 2010-07-01 | 주식회사 케이티 | Network apparatus and method for monitoring real time service using timestamp |
| WO2014084465A1 (en) * | 2012-11-29 | 2014-06-05 | 아주대학교 산학협력단 | Guard time control method through propagation delay estimation and time synchronization acquisition |
| KR20160065010A (en) * | 2014-11-28 | 2016-06-08 | 주식회사 케이티 | Method and system of transmitting oam message for service function chaining in software defined network environment |
| KR20170113807A (en) * | 2016-03-25 | 2017-10-13 | 고려대학교 산학협력단 | Service function chaining system and the method for thereof |
| KR101962346B1 (en) * | 2017-06-14 | 2019-03-27 | 고려대학교 산학협력단 | Method for measuring path latency based on sdn |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10628357B2 (en) | Network controller—sideband interface port controller | |
| WO2017122849A1 (en) | Internet of things network system | |
| WO2015194829A2 (en) | Method for detecting number of selected devices among plurality of client terminals on private network using same public ip by web server provided with additional non-specified domain name from internet access request traffic of client terminal making request for internet access, and selective detection system for device in state in which public ip is shared | |
| US20160134529A1 (en) | Network controller-sideband interface port controller | |
| KR102425919B1 (en) | System, apparatus and method for measuring delay time of service function | |
| US10218634B2 (en) | Network controller-sideband interface port controller | |
| WO2013176431A1 (en) | System and method for allocating server to server and for efficient messaging | |
| WO2021075683A1 (en) | System, device, and method for measuring delay time of service function | |
| US9755892B2 (en) | Integrated device managment over Ethernet network | |
| US7461142B2 (en) | Method and apparatus for address management in a network device | |
| CN119452630A (en) | Communication processing device and communication method | |
| WO2017111539A1 (en) | Device for managing mathematical models for steel processes | |
| WO2025110345A1 (en) | System and method for controlling access to cloud service provider based on ssh tunneling | |
| CN108632115B (en) | System and method for testing timing of idle of POF (Point-of-Care) switch | |
| TW202021319A (en) | Packet forwarding method and device utilizing the same | |
| JP2016171504A (en) | Communication monitoring device, communication monitoring program, and communication monitoring method | |
| EP4210283A1 (en) | Control- and/or monitoring-system for industrial ethernet applications and a respective method of control and monitoring an industrial ethernet device | |
| WO2025198175A1 (en) | Monitoring device for monitoring communication state of power apparatus and power apparatus having same | |
| WO2023058919A1 (en) | Electronic device for processing large amount of data in open radio access network and method for operating same | |
| WO2017030337A1 (en) | Method for processing associated transaction in internet of things, internet of things communication node therefor, and internet of things network using same | |
| CN110300019B (en) | Event management subsystem and method for multi-protocol exchange system | |
| US20250039017A1 (en) | Packet relay system and packet relay method | |
| WO2023058829A1 (en) | In-network management device, network switch, and in-network data aggregation system and method | |
| WO2023059060A1 (en) | Electronic device and operation method for deploying application | |
| CN120929408A (en) | A low-latency interrupt handling method and system for intelligent control centers |
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: 20875727 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: 20875727 Country of ref document: EP Kind code of ref document: A1 |