WO2024043607A1 - 무선 통신 시스템에서 tcp 혼잡 제어 방법 및 장치 - Google Patents
무선 통신 시스템에서 tcp 혼잡 제어 방법 및 장치 Download PDFInfo
- Publication number
- WO2024043607A1 WO2024043607A1 PCT/KR2023/012143 KR2023012143W WO2024043607A1 WO 2024043607 A1 WO2024043607 A1 WO 2024043607A1 KR 2023012143 W KR2023012143 W KR 2023012143W WO 2024043607 A1 WO2024043607 A1 WO 2024043607A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- tcp
- information indicating
- server
- congestion situation
- ack
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 108
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000005540 biological transmission Effects 0.000 claims abstract description 51
- 238000012545 processing Methods 0.000 description 23
- 230000006870 function Effects 0.000 description 21
- 238000005516 engineering process Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 230000004044 response Effects 0.000 description 7
- 239000013256 coordination polymer Substances 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 102100022734 Acyl carrier protein, mitochondrial Human genes 0.000 description 1
- 101000678845 Homo sapiens Acyl carrier protein, mitochondrial Proteins 0.000 description 1
- 101100533725 Mus musculus Smr3a gene Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/19—Flow control; Congestion control at layers above the network layer
- H04L47/193—Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
Definitions
- This disclosure relates generally to wireless communication systems, and more specifically to a method and apparatus for a base station to control Transmission Control Protocol (TCP) congestion in a wireless communication system.
- TCP Transmission Control Protocol
- the 5G communication system or pre-5G communication system is called a Beyond 4G Network communication system or a Post LTE (Long Term Evolution) system.
- 5G communication systems are being considered for implementation in ultra-high frequency (mmWave) bands (such as the 60 GHz band).
- mmWave ultra-high frequency
- the 5G communication system uses beamforming, massive array multiple input/output (massive MIMO), and full dimensional multiple input/output (FD-MIMO). ), array antenna, analog beamforming, and large scale antenna technologies are being discussed.
- the 5G communication system includes advanced small cells, advanced small cells, cloud radio access networks (cloud RAN), ultra-high density networks, and devices.
- D2D Device to Device communication
- wireless backhaul moving network
- cooperative communication Coordinated Multi-Points (CoMP)
- CoMP Coordinated Multi-Points
- interference cancellation etc.
- the 5G system uses FQAM (Hybrid Frequency Shift Keying and Quadrature Amplitude Modulation) and SWSC (Sliding Window Superposition Coding), which are advanced coding modulation (ACM) methods, and FBMC (Filter Bank Multi Carrier), which is an advanced access technology. ), NOMA (Non Orthogonal Multiple Access), and SCMA (Sparse Code Multiple Access) are being developed.
- FQAM Hybrid Frequency Shift Keying and Quadrature Amplitude Modulation
- SWSC Small Cell Multi Carrier
- NOMA Non Orthogonal Multiple Access
- SCMA Synchrom Code Multiple Access
- TCP transmission control protocol
- the transmission speed of the sending side is largely limited by the values of two variables.
- the first is the congestion window (CWND) value, which is a value used to suppress network congestion when multiple TCP connections exist in the network.
- the congestion window may also be referred to as a transmission window.
- the sending side can increase or decrease the congestion window value depending on whether its network is congested.
- the congestion window value is a variable managed only internally and is not notified to the other party of the TCP connection.
- the second is the reception window (RWND) value, which was basically developed to control the transmission speed of the transmitter to prevent buffer overflow at the receiver, but now that memory technology has advanced, it has been developed to control network congestion. It is mainly used to determine the maximum value of the window size.
- Various embodiments of the present disclosure provide a method and apparatus performed by a base station to control TCP congestion in a wireless communication system.
- a method performed by a base station in a wireless communication system includes a buffer (buffer) when a PDCP (packet data control protocol) layer fails to transmit a PDCP SDU (service data unit) to a lower layer.
- Storing the PDCP SDU in the buffer when the size of the PDCP SDU stored in the buffer is equal to or greater than a preset threshold capacity, the header of the first TCP (transmission control protocol) ACK (acknowledgement) transmitted by the terminal to the server ), including information indicating the TCP congestion situation in a field, transmitting a second TCP ACK containing information indicating the TCP congestion situation to the server, and confirming the TCP congestion situation from the server. It may include receiving a TCP packet containing information.
- a base station device in a wireless communication system includes a communication unit and at least one processor, and the at least one processor transmits a PDCP SDU (PDCP SDU) from a PDCP (packet data control protocol) layer to a lower layer.
- PDCP SDU PDCP SDU
- PDCP packet data control protocol
- the PDCP SDU is stored in the buffer, and if the size of the PDCP SDU stored in the buffer is equal to or greater than the preset threshold capacity, the first TCP transmitted from the terminal to the server (transmission control protocol) ACK (acknowledgment) includes information indicating a TCP congestion situation in a field in the header, and transmits a second TCP ACK containing information indicating a TCP congestion situation to the server. And, a packet containing information that the TCP congestion situation has been confirmed can be received from the server.
- transmission control protocol transmission control protocol
- FIG. 1 illustrates the configuration of a communication device and relationships between other devices in a wireless communication system according to various embodiments of the present disclosure.
- FIG. 2 illustrates a hierarchical structure of a wireless communication system according to various embodiments of the present disclosure.
- FIG. 3 illustrates an example of a PDCP SDU transmitted from the PDCP layer to the RLC layer according to various embodiments of the present disclosure.
- FIG. 4 illustrates an example of a PDCP SDU that cannot be delivered from the PDCP layer to the RLC layer according to various embodiments of the present disclosure.
- FIG. 5 shows an example of TCP packets being transmitted and received in a communication system according to various embodiments of the present disclosure.
- FIG. 6 illustrates an example in which a base station detects a TCP congestion situation in a wireless communication system according to various embodiments of the present disclosure.
- Figure 7 shows the configuration of a TCP segment according to various embodiments of the present disclosure.
- Figure 8 shows a hierarchical structure in an NR system according to various embodiments of the present disclosure.
- FIG. 9 illustrates the operation of a base station according to various embodiments of the present disclosure.
- Figure 10 shows the configuration of a server in a wireless communication system, according to various embodiments of the present disclosure.
- FIG. 11 illustrates the configuration of a base station in a wireless communication system, according to various embodiments of the present disclosure.
- Figure 12 shows the configuration of a terminal in a wireless communication system according to various embodiments of the present disclosure.
- Terms referring to signals used in the following description e.g. message, signal, signaling, sequence, stream
- terms referring to resources e.g. symbol, slot
- resources e.g. symbol, slot
- RE resource element
- RB resource block
- BWP bandwidth part
- opportunity opportunity
- Terms referring to data e.g. step, method, process, procedure
- terms referring to data e.g. information, parameter, variable, value ( value, bit, symbol, codeword), terms referring to channels, terms referring to control information (e.g.
- DCI downlink control information
- MAC CE medium access control code word
- RRC radio resource control
- a wireless terminal and/or base station may refer to a device that provides voice and/or data connectivity to a user.
- the wireless terminal may be connected to a computing device, such as a laptop computer or desktop computer, or may be a self-contained device such as a personal digital assistant (PDA).
- PDA personal digital assistant
- a wireless terminal may also be called a system, subscriber unit, subscriber station, mobile station, mobile, mobile device, remote station, remote terminal, access terminal, user terminal, terminal, wireless communication device, user agent, user device, or user equipment. .
- a wireless terminal is a subscriber station, wireless device, cellular telephone, PCS telephone, cordless telephone, Session Initiation Protocol (SIP) telephone, wireless local loop (WLL) station, personal digital assistant (PDA), portable device with wireless connectivity capability, or It could be any other processing device connected to the wireless modem.
- a base station eg, access point
- a base station may refer to a device in an access network that communicates with wireless terminals over one or more sectors over a wireless interface.
- a base station may comprise an Internet Protocol (IP) network and act as a router between wireless terminals and the rest of the access network by converting received air interface frames into IP packets. The base station also coordinates management of attributes for the air interface.
- IP Internet Protocol
- TCP is one of the core protocols of the Internet Protocol suite, and is collectively referred to as TCP/IP.
- TCP provides reliable, ordered delivery of a stream of bytes from a program on a first computer to another program on a second computer.
- TCP is the protocol upon which major Internet applications such as the World Wide Web, email, file transfer, etc. depend.
- TCP provides a point-to-point channel for applications that require reliable communication channels, including Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), and Telnet.
- HTTP Hypertext Transfer Protocol
- FTP File Transfer Protocol
- Telnet Telnet
- TCP is bidirectional in the sense that once a connection is established, the server can respond to the client over the same connection.
- TCP dominates wired networks because of its reliability.
- the performance of the TCP protocol degrades quickly as the path delay between two nodes (e.g., between a transmitting and receiving device) increases. Reducing the transmission rate can prevent the formation or accumulation of additional unwanted congestion. For this reason, the performance of TCP depends on how quickly feedback information can be returned to the transmitting device.
- the design principle of TCP is to provide feedback to transmitting devices to reduce transmission rates when the network is congested. If up-link autonomous/random bandwidth requests or 802.11 data packets are lost due to interference, then bidirectional protocols such as TCP or RDUP can be significantly slowed down.
- TCP can automatically adjust the available bandwidth by changing the rate of data transmission depending on the success or failure of transmitted packets. If the TCP-ACK packet acknowledging the sequence number of the received packets is lost, TCP transmission will slow down or stop until the TCP-ACK is received. Therefore, providing TCP-ACK efficiently is essential to maintain efficient data transmission.
- a transmitting device can react to packet loss when three duplicate ACK packets are received or an ACK timeout occurs.
- the level of congestion can be expressed as a packet loss rate, and an increase in congestion results in an increase in packet loss.
- packet loss in wireless networks can be indicated not only by congestion but also by link loss (e.g. distance, interference, etc.). Although the link layer often provides retransmission mechanisms to reduce the link loss rate, which are described in more detail below, the link loss rate is still typically much higher compared to wired networks.
- Various embodiments of the present disclosure provide a method and apparatus for a base station to control TCP congestion in a wireless communication system.
- Methods and devices according to various embodiments of the present disclosure can recognize a TCP congestion situation without loss of PDCP SDU.
- Methods and devices performed by a base station can maintain high quality communication services by guiding the base station between the server and the terminal to identify the communication environment and quickly control the TCP congestion situation. .
- FIG. 1 illustrates the configuration of a communication device and the relationship 100 between other devices in a wireless communication system according to embodiments of the present disclosure.
- the receiving device is a device located at the end of a TCP connection, and in the present disclosure, it may refer to terminals 110 and 140. Additionally, the transmitting device is a device located at the other end of a TCP connection, and in this disclosure, it may refer to the server 130.
- the intermediate transit device is located between the terminals 110 and 140 and the server 130, which are both ends of the TCP connection, and is directly connected to the base station 120 or communicates with a device directly connected to the base station even if it is not directly connected to the base station. It may be a device that can know the status of the base station's uplink resources through .
- the intermediate transit device may be referred to as a communication device.
- a TCP connection may be established between the terminals 110 and 140 and the server 130 through the base station 120.
- the communication device is connected to the base station 120 and can create a TCP connection 150, 160 with a server outside the mobile communication network through the base station 120 and transmit and receive TCP DATA and TCP ACK. Additionally, the communication device can transmit and receive TCP DATA and TCP ACK by creating a plurality of terminals 110 and 140 and a plurality of TCP connections 150 and 160.
- the base station 120 may maintain a connection between the terminals 110 and 140 and the server 130 and deliver TCP DATA received from the server to the terminal and deliver a TCP ACK generated by the terminal to the server.
- FIG. 2 illustrates a hierarchical structure of a wireless communication system according to various embodiments of the present disclosure.
- the hierarchical structure of the transmitter in the wireless communication system includes a PHY (Physical) layer 200, MAC (Medium Access Control) layer 210, and RLC (Radio Link Control). It includes a layer 220 and a Packet Data Convergence Protocol (PDCP) layer 230.
- PHY Physical
- MAC Medium Access Control
- RLC Radio Link Control
- the PHY layer 200 provides a data transmission function through a wireless channel
- the MAC layer 210 is a layer responsible for mapping between logical channels and transmission channels, and transmits data from the RLC layer 220. It can perform the function of selecting a transmission channel for transmitting data and adding necessary control information to the header of the MAC PDU.
- the RLC layer 220 may perform a function to support reliable transmission of data.
- the RLC layer 220 may segment and concatenate RLC Service Data Units (SDUs) delivered from a higher layer to form data of a size corresponding to the wireless section. Additionally, a data reassembly function may be supported to recover the original RLC SDU from received RLC PDUs.
- SDUs RLC Service Data Units
- the RLC layer 220 may operate in one of TM (Transparent Mode), UM (Unacknowledged Mode), and AM (Acknowledged Mode) depending on the processing and transmission method of the RLC SDU.
- TM Transparent Mode
- UM Unacknowledged Mode
- AM Acknowledged Mode
- the RLC layer 220 can transmit the RLC SDU received from the upper layer to the MAC layer 210 without adding any header information.
- UM the RLC layer 220 does not support retransmission of data, and divides and concatenates RLC SDUs to form an RLC PDU. At this time, header information including a serial number can be added to the RLC PDU. .
- the RLC layer 220 When operating in AM, the RLC layer 220 supports a data retransmission function and can configure an RLC PDU by dividing and concatenating RLC SDUs. At this time, for the retransmission function in AM, various parameters and variables such as transmission window, reception window, timer, counter, etc. can be used.
- the PDCP layer 230 is used in the packet switching area, and can compress and transmit the header of an IP packet to improve the transmission efficiency of packet data in a wireless channel.
- the PDCP layer 230 does not discard (or lose) the TCP packets present in the radio bearer and stores them in the buffer 235. After temporarily storing it, when RRC reconnection with the receiving node is performed, the function for sending and receiving the temporarily stored TCP packet can be performed.
- data refers to data that is not provided from the PDCP layer 230 to another layer, for example, is not transmitted from the PDCP layer 230 to the RLC layer 220 or from the RLC layer 340. This may be a PDCP SDU when data received from the PDCP layer 330 is not processed.
- the PDCP layer 230 may temporarily store the corresponding TCP packet in the buffer 235 depending on the size of the TCP packet or the number of TCP packets, or may discard the corresponding TCP packet without temporarily storing the corresponding TCP packet in the buffer 235.
- the PDCP layer 230 measures the TCP session information for TCP packets and the time when the RRC connection is disconnected, and stores TCP packets corresponding to each TCP session with TCP session information and a timestamp indicating the time when the RRC connection is disconnected. ) can be stored by mapping it to a value.
- TCP session information can be called 5 tuple information in another term, and includes source IP address, source port, destination IP address, and destination port. port) and protocol information.
- the PDCP layer 230 may check the TCP session information and timestamp value of the TCP packet, and store the confirmed TCP session information and timestamp value by mapping them to each TCP packet. In addition, when RRC reconnection is detected, the PDCP layer 230 detects a TCP session corresponding to the TCP session information of the TCP packet temporarily stored in the buffer 235, and transmits the corresponding TCP packet through the detected TCP session. Control and process functions for Additionally, the PDCP layer 230 controls and processes a function to discard the TCP packets when there are TCP packets stored in the buffer 235 for more than a threshold time.
- the PDCP layer 230 can use the timestamp value mapped and stored for each TCP packet to determine whether the corresponding TCP packets have been stored for more than a threshold time.
- discarding TCP packets stored for more than a threshold time is to prevent TCP packets from continuously accumulating in the buffer 235.
- the buffer 235 can separately store TCP packets for each TCP session, and in this case, the buffer 235 can be a full buffer.
- FIG. 3 illustrates an example 300 of a PDCP SDU transmitted from the PDCP layer to the RLC layer according to various embodiments of the present disclosure.
- the types of wireless communication services in the NR system may include a Stand Alone (SA) structure 310 and a Non-Stand Alone (NSA) structure 320.
- the PDCP layer (e.g., 230 in FIG. 2) transfers data from the NR PDCP layer 330 to the NR RLC layer 340 in the SA structure 310, and the LTE RLC layer and NR RLC in the NSA structure 320. Data can be passed through layers.
- a wireless communication service system in the form of the SA structure 310 if the NR RLC layer 340 cannot receive data due to excess data that can be received from the NR PDCP layer 330, data may not be delivered.
- the data when data exceeding the amount of data that the NR RLC layer 340 can receive during a certain time interval is transmitted from the NR PDCP layer 330, or when the NR RLC layer 340 ) If the data received from ) is not processed, the data may not be transmitted from the NR PDCP layer 330 to the NR RLC layer 340.
- data that has not been transmitted from the NR PDCP layer 330 to the NR RLC layer 340 may be stored in a buffer existing in the NR PDCP layer 330.
- Data stored in the buffer refers to data that has not been delivered from the NR PDCP layer 330 to the lower layer, for example, PDCP SDU that has not been delivered from the NR PDCP layer 330 to the NR RLC layer 340. It can be.
- the NR PDCP layer 330 stores the NR RLC layer in the buffer within the NR PDCP layer 330 when the NR RLC layer 340 cannot receive the PDCP SDU from the NR PDCP layer 330.
- PDCP SDUs that were not delivered to (340) can be stored in the buffer.
- FIG. 4 illustrates an example 400 showing a PDCP SDU that cannot be delivered from the PDCP layer to the RLC layer according to various embodiments of the present disclosure.
- the NR system there may be a case 410 in which data is not transmitted from the NR PDCP layer 330 to the NR RLC layer 340.
- data is not transmitted from the NR PDCP layer 330 to the NR RLC layer 340.
- the data may not be transmitted from the NR PDCP layer 330 to the NR RLC layer 340.
- the data that cannot be delivered may be PDCP SDU.
- the NR PDCP layer 330 when data is not delivered to the NR RLC layer 340 (410), the NR PDCP layer 330 sends data to the buffer (Buffer) 235 existing within the NR PDCP layer 330. Data that could not be delivered can be saved. That is, the NR PDCP layer 330 can temporarily store TCP (Transmission Control Protocol) packets in the buffer 235 without discarding (or losing) them.
- TCP Transmission Control Protocol
- the base station uses TCP It can be recognized that this is a TCP congestion situation in which packets are not transmitted smoothly.
- the base station determines that the size of data stored in the buffer 235 in the NR PDCP layer 330, for example, a TCP packet, is equal to or equal to the preset threshold capacity 435 of the buffer 235.
- information indicating a TCP congestion situation may be included in a field in the header of the TCP ACK (Acknowledgement) transmitted from the terminal to the server.
- TCP ACK containing information indicating the TCP congestion situation may be transmitted to the server.
- Information indicating a TCP congestion situation may be included in the TCP ECE (ECN-echo) field that induces TCP congestion situation control.
- the base station adds an ECE (ECN-echo) field that induces control of TCP congestion in the header of the first TCP ACK transmitted from the terminal to the server, in which the size of the PDCP SDU stored in the buffer 235 is preset.
- ECE ECN-echo
- Information that it has been set can be included, and a second TCP ACK including the information can be transmitted to the server.
- Setting a field includes changing the value of the field or setting the value of the field to 0 or 1.
- FIG. 5 illustrates an example 500 in which TCP packets are transmitted and received in a communication system according to various embodiments of the present disclosure.
- the router 520 when the TCP transmitting side and the TCP receiving side exchange data in a TCP connection state, the router 520, which is a network device, can read and interpret the IP header or TCP header.
- the router 520 selects a predetermined process 510 or 530 and checks the ECN (Explicit Congestion Notification) field of the IP header of the corresponding packet. If the ECN field value is 01 or 10, ECT (ECN- Capable Transport) settings and CE (Congestion Experience) settings can be set to notify the receiving side that congestion has occurred.
- the router 520 checks the ECT (540, 550) settings of the IP header of the packet heading from the transmitting side to the receiving side and sets CE (560) in the IP header to indicate that congestion has occurred on the receiving side. You can inform.
- the receiving side recognizing that congestion has occurred, receives an uplink packet (e.g., TCP ACK) corresponding to the received packet for which the ECT (540, 550) and CE (560) are set. You can set the ECE (ECN-echo) 570 field in the TCP header and notify the transmitter that congestion has occurred.
- TCP ACK uplink packet
- ECE ECN-echo
- the transmitting side that receives a TCP ACK with the ECE field set from the receiving side recognizes that congestion has occurred and can reduce the size of the congestion window (or transmission window) to lower the transmission rate of the transmitted data.
- the transmitting side which has reduced the size of the congestion window, lowers the data transmission rate and displays a CWR (Congestion Window) in the TCP header of the packet transmitted to the receiving side in order to inform the receiving side that the ECE field has been successfully set. You can transmit by setting Reduced.
- CWR Congestion Window
- the operation of controlling the congestion situation in FIG. 5 explains the operation of controlling the congestion situation on the transmitting side and the receiving side in a situation where a terminal and a router, and a router and a server are connected by wire.
- the congestion control operation is applied to a wireless system, it may be difficult to recognize the congestion situation through wireless communication between the terminal and the router. In other words, it may be difficult for the server transmitting data to recognize the congestion situation in the wireless section between the terminal and the router.
- the quality of the wireless communication system may deteriorate because the transmitter cannot recognize and control the congestion situation more quickly than in a wired connection situation. Accordingly, the operation for controlling the TCP congestion situation of the base station in the wireless communication system will be described in detail below in FIG. 6.
- FIG. 6 illustrates an example 600 in which a base station detects a TCP congestion situation in a wireless communication system according to various embodiments of the present disclosure.
- a base station can play the role of relaying communication between a terminal and a server. For example, it may play the role of delivering TCP packets transmitted from the terminal to the server and delivering TCP packets transmitted from the server to the terminal.
- the base station 620 may play the role of relaying communication between the terminal 630 and the server 610 and check the communication status of data transmitted from the terminal 630 to the server 610. You can.
- the base station 620 can check the communication status of data in the air section 640, which is a wireless communication section between the terminal 630 and the base station 620.
- the base station 620 uses the PDCP layer (e.g., 330 in FIG. 3) to the RLC layer (e.g., It can be determined whether the size of the PDCP SDU stored in the buffer (e.g., 235 in FIG. 2) and not delivered to 340 in FIG. 3 is equal to or greater than the threshold capacity of the buffer (e.g., 435 in FIG. 4). there is.
- the PDCP layer e.g., 330 in FIG. 3
- the RLC layer e.g., It can be determined whether the size of the PDCP SDU stored in the buffer (e.g., 235 in FIG. 2) and not delivered to 340 in FIG. 3 is equal to or greater than the threshold capacity of the buffer (e.g., 435 in FIG. 4). there is.
- the base station 620 when the size of the PDCP SDU stored in the buffer of the PDCP layer is equal to or greater than the threshold capacity of the buffer, the base station 620 prevents data from being transmitted from the PDCP layer to the RLC layer or to the RLC layer. You can recognize a congestion situation where data is not being processed quickly.
- the base station 620 When the base station 620 recognizes a TCP congestion situation, it can include information indicating the TCP congestion situation in the data transmitted from the terminal 630 to the server 610.
- the base station 620 may include information indicating a TCP congestion situation in a field in the header of a TCP ACK (Acknowledgement) transmitted from the terminal 630 to the server 610.
- TCP ACK containing information indicating the TCP congestion situation may be transmitted to the server.
- Information indicating a TCP congestion situation may be included in the TCP ECE (ECN-echo) field that induces TCP congestion situation control.
- the base station includes information that an ECE (ECN-echo) field that induces control of TCP congestion is set in the header of the first TCP ACK transmitted from the terminal to the server, and a second TCP ACK containing the information TCP ACK can be transmitted to the server.
- Setting a field includes changing the value of the field or setting the value of the field to 0 or 1.
- the process of transmitting the second TCP ACK from the base station 620 to the server 610 includes Congestion Window Reduced (CWR) in the TCP packet transmitted from the server 610 to the base station 620. It can be set (670) and maintained until transmitted to the base station. That is, the base station 620 sets the ECE field if the CWR is set (670) in the TCP packet received from the server 610 and the CWR is set in the same TCP flow flowing through the radio bearer of the PDCP layer of the base station 620. The operation of transmitting the second TCP ACK containing the information that it has been set can be stopped.
- CWR Congestion Window Reduced
- the server 610 which has received data including information indicating a TCP congestion situation from the base station 620, may recognize the congestion situation based on the information indicating the TCP congestion situation. . (660) Additionally, the server 610 can adjust the size of the transmission window (or congestion window) of the data on the server 610 side. For example, the server 610, which has received the second TCP ACK including the setting of the ECE field that induces control of the TCP congestion situation in the field in the header of the first TCP ACK transmitted from the terminal to the server, determines the TCP congestion situation. It can be recognized, and the size of the data transmission window on the server 610 side can be adjusted. By adjusting the size of the transmission window, the server 610 removes transmission delay time and processing delay time in the network, thereby reducing the duration of TCP congestion, and can quickly respond to traffic congestion in the network. It can bring about stabilization of the network.
- the server 610 which has adjusted the size of the congestion window, may set a CWR field indicating that the size of the transmission window has been adjusted in the TCP packet transmitted to the terminal 630 through the base station 620. there is.
- a set CWR field may be included in the TCP header of the TCP packet transmitted from the server 610 to the terminal 630.
- FIG. 7 shows the configuration of a TCP segment 700 according to various embodiments of the present disclosure.
- Figure 7 shows a typical 32-bit TCP segment structure.
- a TCP segment includes a destination port (16 bits), which identifies the receiving port, as well as a source port (16 bits), which identifies the transmitting port.
- TCP segment 700 may include a sequence number. For example, if the Synchronize Sequence Numbers (SYN) flag is set (1), this becomes the initial sequence number. The actual sequence number of the first data byte and the ACK number in the corresponding ACK are the sequence number plus 1. However, if the SYN flag is clear (0), this becomes the cumulative sequence number of the first data byte of the packet for the current session. However, if the SYN flag is clear (0), this becomes the cumulative sequence number of the first data byte of the packet for the current session.
- SYN flag is clear (0)
- the value of the ACK number field is the next sequence number that the receiver is expecting (acknowledges receipt of all previous bytes, if any).
- the first ACK transmitted from each end acknowledges the other end's initial sequence number itself, excluding no data.
- Data offset (4 bits) specifies the size of the TCP Header in 32-bit words. The minimum size of the header is 5 words and the maximum is 15 words, thus providing a minimum of 20 bytes and a maximum of 60 bytes, and options of up to 40 bytes are allowed in the header.
- This field also gets its name from the fact that it is an offset from the beginning of the TCP segment to the actual data.
- the reserved field (4 bits) is reserved for future use and should currently be set to 0.
- the TCP segment further includes the following eight 1-bit flags (8 bits total): (i) receive TCP segment with ECE (ECN-Echo) flag set 720, congestion control mechanism; a Congestion Window Reduced (CWR) flag 710 set by the transmitting host to indicate that it has responded to; (ii) (a) If the SYN (Synchronize Sequence numbers) flag is set (1), the TCP peer is ECN (Explicit Congestion Notification) capable, and (b) if the SYN flag is clear (0), the IP header an ECE flag 720 to indicate that a packet with a Congestion Experienced (CE) flag in the header set was received during normal transmission (added to header by RFC 3168); (iii) URG flag to indicate that the urgent pointer field is slowing down (significant); (iv) ACK flag to indicate that the Acknowledgment field is a signature (all packets must have this flag set after the client transmits the first SYN packet); (v) PSH (Push function) flag
- Window size (16 bits) 740 indicates the size of the receive window and the number of bytes (response) the receiver is currently willing to receive (see Flow Control and Window Scaling below). Specify a sequence number (or higher) in the field.
- Checksum (16 bits) 730 can be used for error checking of header and data. If the URG flag is set, the emergency pointer (16 bits) can indicate that this 16-bit field is an offset from the sequence number indicating the last urgent data byte.
- Options are variable bits 0-320 divisible by 32. The length of the option field is determined by the data offset field. The length of options 0 and 1 is a single byte (8 bits). Remaining options indicate the total length of options (in bytes) in the second byte.
- TCP header padding is used to ensure that the TCP header ends and data begins on a 32-bit boundary, consisting of just zeros.
- Figure 8 shows a hierarchical structure in an NR system according to various embodiments of the present disclosure.
- the NR system introduces function split technology to separate the Central Unit (CU) 810 and the Distributed Unit (DU) 820 in terms of transmission capacity, transmission delay, and ease of deployment.
- gNB 800
- CU Central Unit
- DU Distributed Unit
- gNB 800
- the CU Control Plane i.e., CU-CP
- the CU User Plane i.e., CU-UP
- CU-CP and CU-UP communicate using the E1 interface.
- CU-CP may be configured to include an RRC layer and a PDCP layer
- CU-CP may be configured to include an SDAP layer and a PDCP layer
- DU 820 may be configured to include an RLC layer, MAC layer, and PHY layer.
- Figure 8 shows an example of a function split structure, and is not limited to this, and various function splits depending on what function or layer the CU 810 and DU 820 include. split) structure may be provided.
- the amount of data transmitted from the CU 810 to the DU 820 exceeds the amount that the DU 820 can receive or is transmitted from the DU 820 to the CU 810 If the received data is not processed, the CU 810 may not be able to deliver the data to the DU 820. For example, if the PDCP layer of the CU-CP attempts to deliver data that exceeds the amount of data that the RLC layer of the DU 820 can receive, the CU 810 may not be able to deliver data to the DU 820. You can. At this time, the data may be PDCP SDU.
- the CU 810 may temporarily store the failed data in a buffer within the PDCP layer. That is, if data cannot be transmitted from the CU 810 to the DU 820, the data may be stored in the buffer without being discarded (or lost) in the PDCP layer of the CU 810.
- the gNB 800 determines that the size of the data stored in the buffer in the PDCP layer of the CU 810 is equal to the preset threshold capacity of the buffer (e.g., 435 in FIG. 4). If the number is greater than or equal to 1, the gNB 800 may recognize a TCP congestion situation in which TCP packets cannot be transmitted smoothly.
- the preset threshold capacity of the buffer e.g. 435 in FIG. 4
- the gNB 800 may include information indicating a TCP congestion situation in a field within the header of a TCP ACK (Acknowledgement) transmitted from the terminal to the server.
- TCP ACK containing information indicating a TCP congestion situation may be transmitted to the server.
- Information indicating a TCP congestion situation may be included in the TCP ECE (ECN-echo) field that induces TCP congestion situation control.
- the gNB (800) includes an ECE (ECN-echo) field that induces control of TCP congestion in a field in the header of the first TCP ACK transmitted from the terminal to the server, in which the size of the PDCP SDU stored in the buffer is preset.
- ECE ECN-echo
- a second TCP ACK can be transmitted to the server, including information that it has been set, and including the setting of an ECE field in the header of the first TCP ACK to induce control of the TCP congestion situation.
- Setting a field includes changing the value of the field or setting the value of the field to 0 or 1.
- FIG 9 illustrates operation 900 of a base station according to various embodiments of the present disclosure.
- the base station (e.g., 120 in FIG. 1) is a lower layer (e.g., RLC layer 340 in FIG. 3) in the PDCP layer (e.g., 330 in FIG. 3). ), it is possible to determine whether the PDCP SDU can be delivered. If the PDCP SDU is not delivered from the PDCP layer to the RLC layer, step 920 may be performed.
- the base station may store the PDCP SDU that cannot be delivered from the PDCP layer to the RLCL layer in a buffer within the PDCP (eg, 235 in FIG. 4).
- the PDCP SDU present in the radio bearer stored in the buffer may include a Transmission Control Protocol (TCP) packet, and the TCP packet is not discarded (or lost) and is temporarily stored in the buffer 235. It can be saved.
- TCP Transmission Control Protocol
- the base station may determine whether the size of the PDCP SDU stored in the buffer within the PDCP layer is equal to or greater than the preset threshold capacity of the buffer. If the size of the PDCP SDU stored in the buffer is equal to or greater than the threshold capacity of the buffer, step 940 is performed. If the size of the PDCP SDU is smaller than the threshold capacity of the buffer, the base station transmits the PDCP SDU that cannot be transmitted from the PDCP layer to the RLC layer. You can continue saving to the buffer.
- step 940 if the size of the PDCP SDU stored in the buffer is equal to or greater than the threshold capacity of the buffer, the base station indicates that there is a congestion situation in which data cannot be transmitted from the PDCP layer to the RLC layer or data is not processed quickly in the RLC layer. It can be perceived. That is, the base station can check the communication status of data in the Air section (eg, 640 in FIG. 6), which is the communication section between the base station and the terminal.
- the Air section eg, 640 in FIG. 6
- information indicating the TCP congestion situation may be included in the TCP packet transmitted from the terminal to the server.
- the base station may include information indicating a TCP congestion situation in a field in the header of the first TCP ACK (Acknowledgement) transmitted from the terminal to the server.
- the base station includes an ECE (ECN-echo) field that induces control of TCP congestion in a field in the header of the first TCP ACK transmitted from the terminal to the server, in which the size of the PDCP SDU stored in the buffer is preset. 2 TCP ACK can be delivered to the server.
- Information indicating the TCP congestion situation may be included in the TCP ECE (ECN-echo) field that induces TCP congestion situation control in the header of the second TCP ACK.
- the TCP checksum value may be recalculated based on the information indicating the TCP congestion situation.
- the base station may transmit the second TCP ACK to the server, including the setting of the ECE field for inducing control of the TCP congestion situation in a field in the header of the first TCP ACK. That is, the second TCP ACK may include information that sets the ECE field to a field in the TCP header.
- a server that receives data including information indicating a TCP congestion situation from a base station can recognize the congestion situation. Additionally, the server can adjust the size of the transmission window of server-side data. That is, the server that received the second TCP ACK including the setting of the ECE field that induces control of the TCP congestion situation in the field in the header of the first TCP ACK can recognize the TCP congestion situation, and the server-side data transmission window is The size can be adjusted.
- the base station may receive a packet containing information indicating that the TCP congestion situation has been confirmed from the server. Packets received by the base station from the server may include TCP packets.
- the information indicating that the TCP congestion situation has been confirmed is that the server that adjusted the size of the congestion window adjusted the size of the transmission window in the TCP header of the TCP packet transmitted to the terminal through the base station. may be included in the CWR field.
- the base station in step 940, includes information indicating a TCP congestion situation in a field in the header of the first TCP ACK, based on the CWR field in the TCP header of the TCP packet transmitted from the server to the terminal.
- the operation of base stations from 950 to 950 can be stopped.
- the base station checks the setting information of the CWR field of the TCP packet transmitted from the server to the terminal, and the CWR is set in the same TCP flow flowing through the radio bearer of the PDCP layer, it may be stopped. That is, the base station that confirms the setting of the CWR field in the header of the TCP packet from the server can stop transmitting the second TCP ACK with the ECE field set to the first TCP ACK transmitted from the terminal to the server to the server.
- the operation and operation sequence of the base station are not limited to the above-described embodiment.
- FIG. 10 illustrates the configuration of a server 1000 in a wireless communication system according to various embodiments of the present disclosure.
- the server 1000 includes a communication unit 1010, a control unit 1020, and a memory unit 1030.
- '... Terms such as 'unit' refer to a unit that processes at least one function or operation, and may be implemented as hardware, software, or a combination of hardware and software.
- the communication unit 1010 may provide an interface for communicating with other nodes in the network. That is, the communication unit 1010 converts a bit string transmitted from the server 1000 to another node, for example, a base station, a core network, etc., into a physical signal, and converts the physical signal received from the other node into a bit string. can do.
- another node for example, a base station, a core network, etc.
- the communication unit 1010 determines a period to transmit a response message based on at least one of information about data from the terminal transmitted through the base station and information about whether a TCP congestion situation occurs. Accordingly, a response message can be transmitted to the base station.
- the memory unit 1030 may store data such as basic programs, application programs, and setting information for operation of the server 1000.
- the memory unit 1030 provides stored data upon request from the control unit 1020.
- the memory unit 1030 may store a response message containing at least one of information about data from a terminal transmitted through a base station and information about whether a TCP congestion situation occurs. .
- the control unit 1020 can control the overall operations of the server 1000.
- the control unit 1020 may transmit and receive signals through the communication unit 1010. Additionally, the control unit 1020 can write and read data into the memory unit 1030.
- the control unit 1020 may include at least one processor.
- control unit 1020 has a period for transmitting a response message based on at least one of information about data from the terminal transmitted through the base station and information about whether a TCP congestion situation occurs. can be decided.
- FIG. 11 illustrates the configuration of a base station 1100 in a wireless communication system, according to various embodiments of the present disclosure.
- '... Terms such as 'unit' refer to a unit that processes at least one function or operation, and may be implemented as hardware, software, or a combination of hardware and software.
- the base station 1100 includes a wireless communication unit 1110, a backhaul communication unit 1120, a memory unit 1130, and a control unit 1140.
- the wireless communication unit 1110 may include an RF processing unit (not shown) and a baseband processing unit (not shown).
- the RF processing unit (not shown) may perform functions for transmitting and receiving signals through a wireless channel, such as band conversion and amplification of signals. That is, the RF processing unit (not shown) upconverts the baseband signal provided from the baseband processing unit (not shown) into an RF band signal and transmits it through an antenna, and converts the RF band signal received through the antenna into a baseband signal. Downconvert it to a signal.
- the RF processing unit (not shown) may include a transmission filter, a reception filter, an amplifier, a mixer, an oscillator, a DAC, an ADC, etc.
- the base station 1100 may be equipped with multiple antennas. Additionally, the RF processing unit (not shown) may include multiple RF chains. Furthermore, the RF processing unit (not shown) may perform beamforming. For beamforming, an RF processor (not shown) may adjust the phase and size of each signal transmitted and received through a plurality of antennas or antenna elements.
- the wireless communication unit 1110 can transmit and receive signals.
- the wireless communication unit 1110 may include at least one transceiver.
- the wireless communication unit 1110 can receive a downlink signal.
- Downlink signals include synchronization signal (SS), reference signal (RS) (e.g., cell-specific reference signal (CRS), demodulation (DM)-RS), system information (e.g., MIB, SIB, It may include remaining system information (RMSI), other system information (OSI), configuration message, control information, or downlink data.
- RS reference signal
- DM demodulation
- MIB cell-specific reference signal
- SIB system information
- RMSI remaining system information
- OSI system information
- configuration message control information
- control information or downlink data.
- the communication unit 1801 can transmit an uplink signal.
- Uplink signals include random access-related signals (e.g., random access preamble (RAP) (or Msg1 (message 1)), Msg3 (message 3)), reference signals (e.g., sounding reference signal (SRS), DM) -RS), or power headroom report (PHR), etc.
- RAP random access preamble
- Msg1 messagessage 1
- Msg3 messagessage 3
- reference signals e.g., sounding reference signal (SRS), DM) -RS
- PHR power headroom report
- the wireless communication unit 1110 may include different communication modules to process signals in different frequency bands. Furthermore, the wireless communication unit 1110 may include multiple communication modules to support multiple different wireless access technologies. For example, different wireless access technologies include Bluetooth low energy (BLE), Wireless Fidelity (Wi-Fi), WiFi Gigabyte (WiGig), and cellular networks (e.g., Long Term Evolution (LTE), new wireless network (NR)). radio), etc.
- different frequency bands include super high frequency (SHF) (e.g., 2.5GHz, 5Ghz) bands, millimeter wave (e.g., 38GHz, 60GHz, etc.) bands.
- SHF super high frequency
- the communication unit 1310 may provide the same wireless access method on different frequency bands (e.g., unlicensed band for licensed assisted access (LAA), citizens broadband radio service (CBRS) (e.g., 3.5 GHz)). You can also use technology.
- LAA licensed assisted access
- CBRS citizens broadband radio service
- the wireless communication unit 1110 can transmit and receive signals as described above. Accordingly, all or part of the wireless communication unit 1110 may be referred to as a ‘transmitting unit’, a ‘receiving unit’, or a ‘transmitting/receiving unit’. Additionally, in the following description, transmission and reception performed through a wireless channel are used to mean that the processing as described above is performed by the wireless communication unit 1110.
- a baseband processing unit may perform a conversion function between a baseband signal and a bit string according to the physical layer standard of the system. For example, when transmitting data, a baseband processor (not shown) generates complex symbols by encoding and modulating the transmission bit string. Additionally, when receiving data, the baseband processing unit (not shown) restores the received bit stream by demodulating and decoding the baseband signal provided from the RF processing unit (not shown). For example, when following the OFDM method, when transmitting data, the baseband processor (not shown) generates complex symbols by encoding and modulating the transmission bit string, maps the complex symbols to subcarriers, and performs IFFT operation and OFDM symbols are configured through CP insertion.
- the baseband processing unit (not shown) divides the baseband signal provided from the RF processing unit (not shown) into OFDM symbols, restores the signals mapped to subcarriers through FFT operation, The received bit string is restored through demodulation and decoding.
- the baseband processing unit (not shown) and the RF processing unit (not shown) transmit and receive signals as described above. Accordingly, the baseband processing unit (not shown) and the RF processing unit (not shown) may be referred to as a transmitting unit, a receiving unit, a transceiving unit, or a communication unit.
- the wireless communication unit 1110 may receive data from a terminal. Additionally, the wireless communication unit 1110 can deliver a response message sent from the server to the terminal to the terminal.
- the backhaul communication unit 1120 may provide an interface for communicating with other nodes in the network. That is, the backhaul communication unit 1120 converts a bit string transmitted from the base station 1100 to another node, for example, another base station, a core network, etc., into a physical signal, and converts the physical signal received from the other node into a bit string. It can be converted.
- the backhaul communication unit 1120 may receive a response message sent from the server to the terminal.
- the memory unit 1130 may store data such as basic programs, application programs, and setting information for operation of the base station 1100.
- the memory unit 1130 may provide stored data according to a request from the control unit 1140.
- the control unit 1140 can control the overall operations of the base station 1100. For example, the control unit 1140 transmits and receives signals through the wireless communication unit 1110 or the backhaul communication unit 1120. Additionally, the control unit 1140 can write and read data into the memory unit 1130. For this purpose, the control unit 1140 may include at least one processor.
- FIG. 12 illustrates the configuration of a terminal 1200 in a wireless communication system according to various embodiments of the present disclosure.
- the terminal 1200 may include a communication unit 1210, a memory unit 1230, and a control unit 1240.
- the communication unit 1210 may perform a function of transmitting and receiving wireless signals of data input and output through an antenna.
- the data to be transmitted is channel coded and then RF processed and transmitted.
- the received RF signal is converted into a baseband signal and the baseband signal is transmitted through the channel. It can perform the function of restoring data by decoding (channel decoding).
- the communication unit 1210 can transmit and receive data to the base station through each of a plurality of transmission control protocol connections.
- the communication unit 1210 may include a first communication module for communication with a mobile communication network and a second communication module for communication with a wireless LAN.
- the memory unit 1230 can store microcode of a program for processing and control of the control unit 1240 and various reference data.
- the memory unit 1230 When the communication unit 1210 transmits data through a first communication module for communication with a mobile communication network, the memory unit 1230 according to various embodiments of the present disclosure reports the measured buffer size and buffer status, Network information including information on at least one of a modulation and coding method, an allocated resource block, and a wireless link control buffer size may be stored.
- the memory unit 1230 When the communication unit 1210 transmits data through a second communication module for communication with a wireless LAN, the memory unit 1230 is configured to have at least one of the maximum aggregation size and the media access control (MAC) buffer size. Information about can be stored.
- MAC media access control
- the control unit 1240 can control the overall operation of the control device. For example, it performs processing and control for communication of data including TCP ACK transmitted to the server.
- the control unit 1240 may determine the maximum size of data that can be transmitted based on network information and determine the transmission speed of each of a plurality of TCP connections based on the size of data that can be transmitted. . Based on at least one of the number of the plurality of TCP connections, weight information of the service used by each of the plurality of TCP connections, and data transmission amount used by each of the plurality of TCP connections, the control unit 1240 configures the plurality of TCP connections. You can determine the transfer rate of each TCP connection.
- the control unit 1240 may determine the transmission speed of each of the plurality of TCP connections by distributing the determined maximum size of data that can be transmitted to each of the plurality of TCP connections.
- the configuration of the terminal 1200 shown in FIG. 12 is only an example of a base station, and examples of terminals that perform various embodiments of the present disclosure are not limited to the configuration shown in FIG. 12. That is, some configurations may be added, deleted, or changed according to various embodiments.
- the buffer Storing the PDCP SDU in (buffer), when the size of the PDCP SDU stored in the buffer is equal to or greater than a preset threshold capacity, the first TCP (transmission control protocol) ACK (acknowledgement) transmitted by the terminal to the server Including information indicating the TCP congestion situation in a field in the header, transmitting a second TCP ACK containing information indicating the TCP congestion situation to the server, receiving the TCP congestion situation from the server It may include receiving a TCP packet containing confirmation information.
- the step of including information indicating a TCP congestion situation in a field in the header of the first TCP ACK includes recalculating the TCP checksum value based on the information indicating the TCP congestion situation. More may be included.
- the second TCP ACK may include information indicating a TCP congestion situation in the first TCK ACK.
- information indicating that a TCP congestion situation has been confirmed may be included in a congestion window reduced (CWR) field in the TCP header of a TCP packet.
- CWR congestion window reduced
- the step of transmitting, to the terminal, a packet containing information indicating that the TCP congestion status received from the server has been confirmed may be further included.
- information indicating a TCP congestion situation may be included in the TCP ECE (ECN-echo) field that induces TCP congestion situation control in the header of the second TCP ACK.
- TCP ECE ECN-echo
- the lower layer may include a radio link control (RLC) layer.
- RLC radio link control
- the base station device includes a communication unit and at least one processor, and the at least one processor is configured to transfer from the PDCP (packet data control protocol) layer to the lower layer.
- the PDCP SDU packet data control protocol
- the terminal transmits it to the server.
- a field in the header of the first TCP (transmission control protocol) ACK (acknowledgment) includes information indicating a TCP congestion situation
- a second TCP includes information indicating a TCP congestion situation. It can be controlled to transmit an ACK and receive a TCP packet containing information that the TCP congestion situation has been confirmed from the server.
- At least one processor may control recalculation of the TCP checksum value based on information indicating a TCP congestion situation.
- the second TCP ACK may include information indicating a TCP congestion situation in the first TCK ACK.
- information indicating that a TCP congestion situation has been confirmed may be included in a congestion window reduced (CWR) field in the TCP header of a TCP packet.
- CWR congestion window reduced
- At least one processor includes information indicating a TCP congestion situation in a field in the header of the first TCP ACK, based on the CWR field in the TCP header of the TCP packet received from the server. It can be controlled to stop operation.
- At least one processor may control delivery to the terminal of a packet containing information indicating that the TCP congestion situation has been confirmed received from the server.
- information indicating a TCP congestion situation may be included in the TCP ECE (ECN-echo) field that induces TCP congestion situation control in the header of the second TCP ACK.
- TCP ECE ECN-echo
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 개시(disclosure)는 무선 통신 시스템에서 기지국에 의해 수행되는 방법 및 장치들이 설명된다. 특히, 본 개시의 다양한 실시예들에 따르는 무선 통신 시스템에서 기지국에 의해 수행되는 방법에 있어서, PDCP(packet data control protocol) 계층에서 하위계층으로 PDCP SDU(service data unit)를 전달하지 못하는 경우, 버퍼(buffer)에 PDCP SDU를 저장하는 단계, 버퍼에 저장된 PDCP SDU의 크기가 미리 설정된 임계(threshold) 용량과 같거나 큰 경우 단말이 서버로 전송하는 제1 TCP(transmission control protocol) ACK(acknowledgement)의 헤더(header) 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 단계, 서버로, TCP 혼잡 상황을 지시하는 정보를 포함하는 제2 TCP ACK를 전송하는 단계, 서버로부터 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 TCP 패킷을 수신하는 단계가 포함될 수 있다. 이 외에도 명세서를 통해 파악되는 다양한 실시예가 가능하다.
Description
본 개시는 일반적으로 무선 통신 시스템에 관한 것으로, 보다 구체적으로 무선 통신 시스템에서 TCP(Transmission Control Protocol) 혼잡 상황을 제어하기 위한 기지국(base station)의 방법 및 장치에 관한 것이다.
4G(4th generation) 통신 시스템 상용화 이후 증가 추세에 있는 무선 데이터 트래픽 수요를 충족시키기 위해, 개선된 5G(5th generation) 통신 시스템 또는 pre-5G 통신 시스템을 개발하기 위한 노력이 이루어지고 있다. 이러한 이유로, 5G 통신 시스템 또는 pre-5G 통신 시스템은 4G 네트워크 이후(Beyond 4G Network) 통신 시스템 또는 LTE(Long Term Evolution) 시스템 이후(Post LTE) 시스템이라 불리어지고 있다.
높은 데이터 전송률을 달성하기 위해, 5G 통신 시스템은 초고주파(mmWave) 대역(예를 들어, 60기가(60GHz) 대역과 같은)에서의 구현이 고려되고 있다. 초고주파 대역에서의 전파의 경로손실 완화 및 전파의 전달 거리를 증가시키기 위해, 5G 통신 시스템에서는 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO), 전차원 다중 입출력(Full Dimensional MIMO, FD-MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beamforming), 및 대규모 안테나(large scale antenna) 기술들이 논의되고 있다.
또한 시스템의 네트워크 개선을 위해, 5G 통신 시스템에서는 진화된 소형 셀, 개선된 소형 셀(advanced small cell), 클라우드 무선 액세스 네트워크(cloud radio access network, cloud RAN), 초고밀도 네트워크(ultradense network), 기기 간 통신(Device to Device communication, D2D), 무선 백홀(wireless backhaul), 이동 네트워크(moving network), 협력 통신(cooperative communication), CoMP(Coordinated Multi-Points), 및 수신 간섭제거(interference cancellation) 등의 기술 개발이 이루어지고 있다.
이 밖에도, 5G 시스템에서는 진보된 코딩 변조(Advanced Coding Modulation, ACM) 방식인 FQAM(Hybrid Frequency Shift Keying and Quadrature Amplitude Modulation) 및 SWSC(Sliding Window Superposition Coding)과, 진보된 접속 기술인 FBMC(Filter Bank Multi Carrier), NOMA(Non Orthogonal Multiple Access), 및 SCMA(Sparse Code Multiple Access) 등이 개발되고 있다.
한편, TCP(transmission control protocol)는 네트워크에 연결된 두 어플리케이션(예를 들어, 서버와 단말)간의 연결 지향적(connection-oriented) 통신 서비스를 제공한다.
TCP 연결에서 송신 측(TCP sender)의 전송 속도는 크게 두 변수 값에 의해 제한된다. 첫 번째는 혼잡 윈도우(CWND) 값으로, 다수의 TCP 연결이 네트워크에 존재할 때 네트워크의 혼잡을 억제하기 위해 사용되는 값이다. 혼잡 윈도우는 송신 윈도우라고도 칭할 수 있다. 송신 측은 혼잡 윈도우 값을 자신의 네트워크가 혼잡한 상태인지 여부에 따라 증가하거나 감소시킬 수 있으며, 혼잡 윈도우 값은 내부에서만 관리되는 변수로 TCP 연결의 상대방에게 알리지는 않는다. 두 번째는 수신 윈도우(RWND) 값으로, 기본적으로는 수신 단에서의 버퍼 오버플로우를 방지하기 위해 송신 단의 전송 속도를 제어하는 용도로 개발되었으나 메모리 기술이 발전한 현재에는 네트워크 혼잡을 제어하기 위해 혼잡 윈도우 크기의 최대값을 결정하는데 주로 사용되고 있다.
현재 무선 통신 시스템에서 TCP 연결에서 송신 측(TCP sender)과 TCP 수신 측(TCP receiver)사이의 원활한 TCP 패킷의 송수신을 위하여 TCP 헤더(header) 내의 필드를 설정하여 TCP 혼잡 상황을 제어하고자 하는 기술들이 개발되고 있다.
본 개시의 다양한 실시예들은 무선 통신 시스템에서 TCP 혼잡 상황을 제어하기 위하여 기지국(base station)에 의해 수행되는 방법 및 장치를 제공한다.
본 개시의 다양한 실시예에 따르면, 무선 통신 시스템에서 기지국에 의해 수행되는 방법은, PDCP(packet data control protocol) 계층에서 하위계층으로 PDCP SDU(service data unit)를 전달하지 못하는 경우, 버퍼(buffer)에 PDCP SDU를 저장하는 단계, 버퍼에 저장된 PDCP SDU의 크기가 미리 설정된 임계(threshold) 용량과 같거나 큰 경우 단말이 서버로 전송하는 제1 TCP(transmission control protocol) ACK(acknowledgement)의 헤더(header) 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 단계, 서버로, TCP 혼잡 상황을 지시하는 정보를 포함하는 제2 TCP ACK를 전송하는 단계, 서버로부터 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 TCP 패킷을 수신하는 단계를 포함할 수 있다.
본 개시의 다양한 실시예에 따르면, 무선 통신 시스템에서 기지국의 장치에 있어서, 통신부, 적어도 하나의 프로세서를 포함하며, 적어도 하나의 프로세서는, PDCP(packet data control protocol) 계층에서 하위계층으로 PDCP SDU(service data unit)를 전달하지 못하는 경우, 버퍼(buffer)에 PDCP SDU를 저장하고, 버퍼에 저장된 PDCP SDU의 크기가 미리 설정된 임계(threshold) 용량과 같거나 큰 경우 단말이 서버로 전송하는 제1 TCP(transmission control protocol) ACK(acknowledgement)의 헤더(header) 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시키며, 서버로, TCP 혼잡 상황을 지시하는 정보를 포함하는 제2 TCP ACK를 전송하고, 서버로부터 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 패킷을 수신할 수 있다.
도 1은 본 개시의 다양한 실시예들에 따른 무선 통신 시스템에서 통신 장치의 구성 및 다른 장치 간의 관계를 도시한다.
도 2는 본 개시의 다양한 실시예들에 따른 무선 통신 시스템의 계층 구조를 도시한다.
도 3은 본 개시의 다양한 실시예들에 따른 PDCP 계층에서 RLC 계층으로 전달되는 PDCP SDU를 나타내는 예를 도시한다.
도 4는 본 개시의 다양한 실시예들에 따른 PDCP 계층에서 RLC 계층으로 전달되지 못하는 PDCP SDU를 나타내는 예를 도시한다.
도 5는 본 개시의 다양한 실시예들에 따른 통신 시스템에서 TCP 패킷이 송수신되는 예를 도시한다.
도 6은 본 개시의 다양한 실시예들에 따른 무선 통신 시스템에서 기지국이 TCP 혼잡 상황을 감지하는 예를 도시한다.
도 7은 본 개시의 다양한 실시예들에 따른 TCP 세그먼트의 구성을 도시한다.
도 8은 본 개시의 다양한 실시예들에 따른 NR 시스템에서의 계층 구조를 도시한다.
도 9는 본 개시의 다양한 실시예들에 따른 기지국의 동작을 도시한다.
도 10은 본 개시의 다양한 실시예들에 따른, 무선 통신 시스템에서 서버의 구성을 도시한다.
도 11은 본 개시의 다양한 실시예들에 따른, 무선 통신 시스템에서 기지국의 구성을 도시한다.
도 12는 본 개시의 다양한 실시예들에 따른, 무선 통신 시스템에서 단말의 구성을 도시한다.
청구되는 대상의 다양한 양상들이 도면들을 참조하여 설명되며, 상기 도면들에서 유사한 도면 부호들은 유사한 엘리먼트들을 지칭하도록 사용된다. 하기의 설명에서, 설명의 목적으로, 다수의 특정 세부사항들이 하나 이상의 실시예들의 충분한 이해를 제공하기 위해 설명된다. 그러나, 상기 실시예(들)은 이들 특정 세부사항들 없이 실행될 수 있음이 명백할 수 있다.
본 개시에서 사용되는 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 개시에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 개시에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 개시에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 개시에서 정의된 용어일지라도 본 개시의 실시예들을 배제하도록 해석될 수 없다.
이하 설명에서 사용되는 신호를 지칭하는 용어(예: 메시지, 신호, 시그널링(signaling), 시퀀스(sequence), 스트림(stream))), 자원을 지칭하는 용어(예 심볼(symbol), 슬롯(slot), 서브프레임(subframe), 무선 프레임(radio frame), 서브캐리어(subcarrier), RE(resource element), RB(resource block), BWP(bandwidth part), 기회(Occasion)), 동작(operation)을 위한 용어(예: 단계(step), 방법(method), 과정(process), 절차(procedure)), 데이터를 지칭하는 용어(예: 정보(information), 파라미터(parameter), 변수(variable), 값(value), 비트(bit), 심볼(symbol), 코드워드(codeword)), 채널을 지칭하는 용어, 제어 정보를 지칭하는 용어(예: DCI(downlink control information), MAC CE(medium access control 코드 워드 element), RRC(radio resource control) signaling), 네트워크 객체(network entity)들을 지칭하는 용어, 장치의 구성 요소를 지칭하는 용어 등은 설명의 편의를 위해 예시된 것이다. 따라서, 본 개시가 후술되는 용어들에 한정되는 것은 아니며, 동등한 기술적 의미를 가지는 다른 용어가 사용될 수 있다.
본 개시의 다양한 실시예들에 따른 무선 단말 및/또는 기지국이 설명된다. 무선 단말은 사용자에게 음성 및/또는 데이터 접속을 제공하는 디바이스를 지칭할 수 있다. 무선 단말은 랩탑 컴퓨터 또는 데스크 탑 컴퓨터와 같은 컴퓨팅 디바이스에 접속될 수 있거나 개인용 휴대용 정보 단말기(PDA)와 같은 자립형(selfcontained) 디바이스가 될 수 있다. 무선 단말은 또한 시스템, 가입자 유닛, 가입자국, 이동국, 모바일, 이동 디바이스, 원격국, 원격 단말, 액세스 단말, 사용자 단말, 단말, 무선 통신 디바이스, 사용자 에이전트, 사용자 디바이스, 또는 사용자 장비라 불릴 수 있다. 무선 단말은 가입자국, 무선 디바이스, 셀룰러 전화기, PCS 전화기, 무선 전화기, 세션 초기화 프로토콜(SIP) 전화기, 무선 로컬 루프(WLL) 스테이션, 개인 디지털 보조장치(PDA), 무선 접속 능력을 갖춘 휴대용 디바이스 또는 무선 모뎀에 접속되는 다른 프로세싱 디바이스가 될 수 있다. 기지국(예컨대, 액세스 포인트)는 하나 이상의 섹터들을 통해 무선 인터페이스에서 무선 단말들과 통신하는 액세스 네트워크 내 디바이스를 지칭할 수 있다. 기지국은 수신된 무선 인터페이스 프레임들을 IP 패킷들로 변환함으로써 인터넷 프로토콜(IP) 네트워크를 포함할 수 있고 무선 단말 및 액세스 네트워크의 나머지 부분 사이에서 라우터로 동작할 수 있다. 기지국은 또한 무선 인터페이스에 대한 속성들의 관리를 조정한다.
본 개시에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 일반적으로 사용되는 사전에 정의된 용어들은 관련 기술의 문맥 상 가지는 의미와 동일 또는 유사한 의미를 가지는 것으로 해석될 수 있으며, 본 개시에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 개시에서 정의된 용어일지라도 본 개시의 실시예들을 배제하도록 해석될 수 없다.
TCP는 인터넷 프로토콜 슈트(Internet Protocol suite)의 코어 프로토콜 중 하나로서, 총칭하여 TCP/IP로 지칭된다. TCP는 제1 컴퓨터상의 프로그램에서 제2 컴퓨터상의 또다른 프로그램으로 신뢰성 있고 정렬된 바이트 스트림(a stream of bytes)의 전달을 제공한다. 결과적으로, TCP는 월드 와이드 웹(World Wide Web), 전자 메일, 파일 전송 등과 같은 주요 인터넷 애플리케이션들에 의존하는 프로토콜이다. 예를 들어, TCP는 HTTP(Hypertext Transfer Protocol), FTP(File Transfer Protocol) 및 Telnet을 포함하는 신뢰성 있는 정보통신 채널을 요구하는 애플리케이션용 점대점 채널(point-to-point channel)을 제공한다. TCP는 상기 애플리케이션 계층(application layer)에 세 가지를 보증한다는 점에서 신뢰성이 있다: (i) 목적지는 데이터가 전송된 순서대로 수신할 것이다; (ii) 목적지는 상기 모든 데이터를 수신할 것이다; 그리고 (iii) 목적지는 데이터를 중복 수신하지 않을 것이다. TCP는 일단 접속이 실현되면, 서버가 동일한 접 속을 통해 클라이언트에게 응답할 수 있다는 점에서 양방향성(bidirectional)이다. TCP는 그 신뢰성 때문에 유선 네트워크를 지배하고 있다. 그러나 TCP 프로토콜의 성능은 두 노드 사이(예를 들어, 전송 및 수신 디바이스 사이)의 경로 지연이 증가함에 따라 빠르게 저하된다. 전송 레이트 (transmission rate)를 감소시키는 것은 원치 않는 추가적인 혼잡(congestion)의 형성이나 축적을 방지할 수 있다. 이러한 이유로, TCP의 성능은 피드백 정보가 얼마나 빨리 전송 디바이스에 반환(return)될 수 있는가에 달려있다. 예를 들어, TCP의 설계 원리는 네트워크가 혼잡할 때 전송 레이트를 줄이기 위하여 전송 디바이스에 피드백을 제공하는 것이다. 상향링크(up-link) 자율/랜덤 대역폭 요청 또는 802.11 데이터 패킷들이 간섭 때문에 분실되면, 그 때 TCP 또는 RDUP와 같은 양방향성 프로토콜들은 상당히 느려질 수 있다. TCP는 전송된 패킷들의 성공이나 실패에 따라 데이터 전송의 레이트를 변경함으로써 사용 가능한 대역폭을 자동으로 조절할 수 있다. 만약 수신된 패킷들의 시퀀스 번호를 확인 응답하는 TCP-ACK 패킷(TCP-ACKnowledgment packet)이 분실되면, TCP-ACK가 수신될 때까지 TCP 전송은 느려지거나 정지할 것이다. 그러므로 TCP-ACK를 효율적으로 제공하는 것은 효율적인 데이터 전송을 유지하는 데에 있어서 필수적이다. 예를 들어, TCP 표준에 따르면 전송 디바이스는 세 개의 중복된 ACK 패킷들이 수신되거나 ACK 타임아웃(timeout)이 발생하는 경우 패킷 손실에 반응할 수 있다. 유선 네트워크에서 혼잡의 레벨(level of congestion)은 패킷 손실율(packet loss rate)로 표시될 수 있으며, 혼잡의 증가는 패킷 손실의 증가를 가져온다. 그러나 무선 네트워크에서 패킷의 손실은 혼잡뿐만 아니라 링크 손실(예를 들어 거리, 간섭 등)에 의해서도 표시될 수 있다. 비록 링크 계층(link layer)은 이하 더 상세하게 설명되어 있는 링크 손실율(link loss rate)을 줄이기 위해 종종 재전송 메커니즘을 제공하지만, 링크 손실율은 여전히 유선 네트워크에 비해 통상적으로 훨씬 더 크다.
본 개시의 다양한 실시예들은 무선 통신 시스템에서 TCP 혼잡 상황을 제어하는 기지국의 방법 및 장치를 제공한다.
본 개시의 다양한 실시예에 따른 방법 및 장치는, PDCP SDU의 유실 없이 TCP 혼잡 상황을 인지할 수 있다.
본 개시의 다양한 실시예에 따른 기지국에 의해 수행되는 방법 및 장치는, 서버와 단말사이의 기지국이 통신 환경을 파악하여 신속하게 TCP 혼잡 상황을 제어하도록 유도하여, 고품질의 통신 서비스를 유지시킬 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 실시예들에 따른 무선 통신 시스템에서 통신 장치의 구성 및 다른 장치 간의 관계(100)를 도시한다.
도 1을 참조하면, 수신 장치는 TCP 연결의 종단에 위치한 장치로서, 본 개시에서는 단말(110, 140)을 의미할 수 있다. 또한, 송신 장치는 TCP 연결의 다른 종단에 위치한 장치로서, 본 개시에서는 서버(130)를 의미할 수 있다. 중간 경유 장치는 TCP 연결의 양 종단인 단말(110, 140)과 서버(130)의 중간에 위치하며, 기지국(120)에 직접 연결되거나 기지국에 직접 연결되지 않았더라도 기지국과 직접 연결된 장치와의 통신을 통해 기지국 상향링크 자원의 상황을 알 수 있는 장치일 수 있다. 이하, 중간 경유 장치를 통신 장치라 칭할 수 있다.
기지국(120)을 통해 단말(110, 140)과 서버(130) 사이에서는 TCP 연결이 설정될 수 있다. 통신 장치는 기지국(120)과 연결되어 있으며, 기지국(120)을 통해 이동 통신 망 외부의 서버와 TCP 연결(150, 160)을 생성하고 TCP DATA 및 TCP ACK를 송수신할 수 있다. 또한, 통신 장치는 복수의 단말(110, 140)과 복수의 TCP 연결(150, 160)을 생성하여 TCP DATA 및 TCP ACK를 송수신할 수 있다. 구체적으로, 기지국(120)은 단말(110, 140)과 서버(130)와의 연결을 유지한 채 서버로부터 수신되는 TCP DATA를 단말에 전달하고, 단말이 생성한 TCP ACK를 서버에 전달할 수 있다.
도 2는 본 개시의 다양한 실시예들에 따른 무선 통신 시스템의 계층 구조를 도시한다.
도 2를 참조하면, 본 개시의 다양한 실시예들에 따른 무선통신 시스템에서 송신단의 계층 구조는 PHY(Physical) 계층(200), MAC(Medium Access Control) 계층(210), RLC(Radio Link Control) 계층(220), 및 PDCP(Packet Data Convergence Protocol) 계층(230)을 포함하여 구성된다.
PHY 계층(200)은 무선채널을 통한 데이터의 전송 기능을 제공하고, MAC 계층(210)은 논리채널(Logical channel)과 전송채널 사이의 매핑을 담당하는 계층으로서, RLC 계층(220)에서 전달된 데이터를 전송하기 위한 전송 채널을 선택하고, 필요한 제어 정보를 MAC PDU의 헤더에 추가하는 기능을 수행할 수 있다. RLC 계층(220)은 데이터의 신뢰성 있는 전송을 지원하기 위한 기능을 수행할 수 있다. RLC 계층(220)은 무선 구간에 대응하는 크기의 데이터를 구성하기 위해 상위 계층으로부터 전달된 RLC SDU(Service Data Unit)들을 분할(segmentation)하고, 연결(Concatenation)할 수 있다. 또한, 수신된 RLC PDU들로부터 원래의 RLC SDU를 복구하기 위해 데이터의 재결합(Reassembly) 기능을 지원할 수 있다. RLC 계층(220)은 RLC SDU의 처리 및 전송 방식에 따라 TM(Transparent Mode), UM(Unacknowledged Mode), AM(Acknowledged Mode) 중 어느 하나로 동작할 수 있다. TM으로 동작하는 경우, RLC 계층(220)은 상위계층으로부터 수신된 RLC SDU에 어떤 헤더 정보도 추가하지 않고, MAC 계층(210)으로 전달할 수 있다. 또한, UM으로 동작하는 경우, RLC 계층(220)은 데이터의 재전송을 지원하지 않으며, RLC SDU를 분할 및 연결하여 RLC PDU를 구성하고, 이때 RLC PDU에 일련 번호를 포함한 헤더 정보를 추가할 수 있다. AM으로 동작하는 경우, RLC 계층(220)은 데이터의 재전송 기능을 지원하며, RLC SDU를 분할 및 연결하여 RLC PDU를 구성할 수 있다. 이때, AM에서의 재전송 기능을 위해, 송신 윈도우, 수신 윈도우, 타이머, 카운터 등과 같은 다양한 파라미터들과 변수들이 사용될 수 있다.
PDCP 계층(230)은 패킷 교환 영역에서 사용되며, 무선채널에서 패킷 데이터의 전송 효율을 향상시킬 수 있도록 IP 패킷의 헤더를 압축하여 전송할 수 있다. 특히, 본 개시의 실시예에 따라 PDCP 계층(230)은 수신측 노드와의 RRC 연결이 해제될 시, 무선 베어러(Radio Bearer)에 존재하는 TCP 패킷을 폐기(혹은 손실)하지 않고 버퍼(235)에 임시 저장한 후, 수신측 노드와 RRC 재연결이 수행될 시, 임시 저장된 TCP 패킷을 송수신하기 위한 기능을 수행할 수 있다. 여기서, 데이터는 PDCP 계층(230)에서 다른 계층으로 제공되지 않은 상태에 있는 데이터를 의미하며, 예를 들어, PDCP 계층(230)에서 RLC 계층(220)으로 전달되지 않거나 또는 RLC 계층(340)에서 PDCP 계층(330)으로부터 전달받은 데이터가 처리되지 않는 경우의 PDCP SDU일 수 있다.
PDCP 계층(230)은 TCP 패킷의 크기 혹은 TCP 패킷의 수에 따라 해당 TCP 패킷을 버퍼(235)에 임시 저장할 수도 있으며, 해당 TCP 패킷을 버퍼(235)에 임시 저장하지 않고 폐기할 수도 있다. PDCP 계층(230)은 TCP 패킷에 대한 TCP 세션(session) 정보와 RRC 연결이 해제된 시점을 측정하여, 각 TCP 세션에 대응하는 TCP 패킷들을 TCP 세션 정보 및 RRC 연결 해제 시점을 나타내는 타임스탬프(timestamp) 값과 매핑하여 저장할 수 있다. 이때, TCP 세션 정보는 다른 용어로 5 튜플(5 tuple) 정보라 할 수 있으며, 소스 IP 주소(source IP address), 소스 포트(source port), 목적지 IP 주소(destination IP address), 목적지 포트(destination port), 프로토콜(protocol) 정보를 포함할 수 있다. 예를 들어, PDCP 계층(230)은 TCP 패킷의 TCP 세션 정보와 타임스탬프 값을 확인하고, 확인된 TCP 세션 정보 정보 및 타임스탬프 값을 각 TCP 패킷과 매핑하여 저장할 수 있다. 또한, PDCP 계층(230)은 RRC 재연결이 감지될 시, 버퍼(235)에 임시 저장된 TCP 패킷의 TCP 세션 정보에 대응하는 TCP 세션을 감지하고, 감지된 TCP 세션을 통해 해당 TCP 패킷을 전송하기 위한 기능을 제어 및 처리한다. 또한, PDCP 계층(230)은 버퍼(235)에 임계 시간 이상 저장된 TCP 패킷들이 존재할 시, 해당 TCP 패킷들을 폐기하기 위한 기능을 제어 및 처리한다. 이때, PDCP 계층(230)은 각 TCP 패킷들에 매핑되어 저장된 타임스탬프 값을 이용하여 해당 TCP 패킷들이 임계 시간 이상 저장되었는지 여부를 판단할 수 있다. 여기서, 임계 시간 이상 저장된 TCP 패킷들을 폐기 처리하는 것은, 버퍼(235)에 TCP 패킷들이 계속적으로 누적되는 것을 방지하기 위함이다. 이때, 버퍼(235)는 TCP 세션별 TCP 패킷을 구분하여 저장할 수 있으며, 이때 버퍼(235)는 풀 버퍼(pool buffer)일 수 있다.
도 3은 본 개시의 다양한 실시예들에 따른 PDCP 계층에서 RLC 계층으로 전달되는 PDCP SDU를 나타내는 예(300)를 도시한다.
도 3을 참조하면, NR 시스템에서 무선 통신 서비스의 형태는 SA(Stand Alone) 구조(310) 및 NSA(Non-Stand Alone) 구조(320)가 있을 수 있다. PDCP 계층(예를 들어, 도 2의 230)는 SA 구조(310)에서는 NR PDCP 계층(330)에서 NR RLC 계층(340)로 데이터를 전달하고, NSA 구조(320)에서는 LTE RLC 계층, NR RLC 계층으로 데이터를 전달할 수 있다. SA 구조(310) 형태의 무선 통신 서비스 시스템에서, NR RLC 계층(340)이 NR PDCP 계층(330)으로부터 받을 수 있는 데이터의 초과로 데이터를 받을 수 없는 경우, 데이터가 전달되지 못할 수 있다. 예를 들어, NR RLC 계층(340)이 일정 시간 간격동안 전달받을 수 있는 데이터의 양을 초과하는 데이터가 NR PDCP 계층(330)에서 전달되는 경우 또는 NR RLC 계층(340)에서 NR PDCP 계층(330)으로부터 전달받은 데이터가 처리되지 않는 경우에 NR PDCP 계층(330)에서 NR RLC 계층(340)으로 데이터가 전달되지 못할 수 있다.
본 개시의 일 실시예에 따르면, NR PDCP 계층(330)에서 NR RLC 계층(340)으로 전달되지 못한 데이터는 NR PDCP 계층(330)에 존재하는 버퍼로 저장될 수 있다. 버퍼에 저장되는 데이터는 NR PDCP 계층(330)에서 하위 계층으로 전달되지 않은 상태에 있는 데이터를 의미하며, 예를 들어, NR PDCP 계층(330)에서 NR RLC 계층(340)으로 전달되지 않은 PDCP SDU일 수 있다.
본 개시의 일 실시예에 따르면, NR PDCP 계층(330)은 NR RLC 계층(340)이 NR PDCP 계층(330)으로부터 PDCP SDU를 받을 수 없는 경우에는 NR PDCP 계층(330)내의 버퍼에 NR RLC 계층(340)으로 전달되지 못한 PDCP SDU를 버퍼에 저장할 수 있다. 이하, 도 4에서 구체적으로 설명한다.
도 4는 본 개시의 다양한 실시예들에 따른 PDCP 계층에서 RLC 계층으로 전달되지 못하는 PDCP SDU를 나타내는 예(400)를 도시한다.
도 4를 참조하면, NR 시스템에서 NR PDCP 계층(330)에서 NR RLC 계층(340)으로 데이터가 전달되지 못하는 경우(410)가 있을 수 있다. 예를 들어, NR RLC 계층(340)이 일정 시간 간격동안 전달받을 수 있는 데이터의 양을 초과하는 데이터가 NR PDCP 계층(330)에서 전달되는 경우 또는 NR RLC 계층(340)에서 NR PDCP 계층(330)으로부터 전달받은 데이터가 처리되지 않는 경우에 NR PDCP 계층(330)에서 NR RLC 계층(340)으로 데이터가 전달되지 못할 수 있다. 이때, 전달되지 못하는 데이터는 PDCP SDU일 수 있다.
본 개시의 일 실시예에 따르면, NR PDCP 계층(330)은 NR RLC 계층(340)으로 데이터가 전달되지 못하는 경우(410), NR PDCP 계층(330) 내에 존재하는 버퍼(Buffer)(235)에 전달되지 못한 데이터를 저장할 수 있다. 즉, NR PDCP 계층(330)은 TCP(Transmission Control Protocol) 패킷을 폐기(혹은 손실)하지 않고 버퍼(235)에 임시 저장할 수 있다.
본 개시의 일 실시예에 따르면, NR PDCP 계층(330)내의 버퍼(235)에 저장된 데이터의 크기가 버퍼(235)의 미리 설정된 임계(threshold) 용량(435)과 같거나 큰 경우, 기지국은 TCP 패킷들이 원활하게 전달되지 못하는 TCP 혼잡 상황임을 인지할 수 있다.
본 개시의 일 실시예에 따르면, 기지국은 NR PDCP 계층(330) 내의 버퍼(235)에 저장된 데이터, 예를 들어, TCP 패킷의 크기가 버퍼(235)의 미리 설정된 임계 용량(435)과 같거나 큰 경우, 단말에서 서버로 전송되는 TCP ACK(Acknowledgement)의 헤더 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시킬 수 있다. 기지국의 동작에 따라 TCP 혼잡 상황을 지시하는 정보를 포함하게 된 TCP ACK는 서버로 전달될 수 있다. TCP 혼잡 상황을 지시하는 정보는 TCP 혼잡 상황 제어를 유도하는 TCP ECE(ECN-echo) 필드에 포함될 수 있다. 예를 들어, 기지국은 버퍼(235)에 저장된 PDCP SDU의 크기가 미리 설정된 단말에서 서버로 전달되는 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황의 제어를 유도하는 ECE(ECN-echo) 필드를 설정하였다는 정보를 포함시키고, 상기 정보를 포함시킨 제2 TCP ACK를 서버로 전송할 수 있다. 필드를 설정한다는 것은 필드의 값을 변경하거나 또는 필드의 값을 0 또는 1로 설정한다는 의미를 포함한다.
도 5는 본 개시의 다양한 실시예들에 따른 통신 시스템에서 TCP 패킷이 송수신되는 예(500)를 도시한다.
도 5를 참조하면, TCP 연결 상태에서 TCP 송신 측과 TCP 수신 측이 데이터를 주고받을 때 네트워크 장치인 라우터(520)는 IP 헤더 또는 TCP 헤더(header)를 읽고 해석할 수 있다. 라우터(520)는 소정의 프로세스(510, 530)를 선택하여 그에 해당하는 패킷의 IP 헤더의 ECN(Explicit Congestion Notification) 필드를 확인하고, 만약 ECN 필드 값이 01 또는 10인 경우, ECT(ECN-Capable Transport) 설정 및 CE(Congestion Experience)를 설정하여 수신 측에 혼잡이 발생하였다는 것을 알릴 수 있다. 예를 들어, 라우터(520)는 송신 측에서 수신 측으로 향하는 패킷의 IP 헤더의 ECT(540, 550) 설정을 확인하고, IP 헤더에 CE(560)를 설정하여 수신 측에 혼잡이 발생하였다는 것을 알릴 수 있다.
본 개시의 일 실시예에 따르면, 혼잡이 발생하였다는 것을 인지한 수신 측은 ECT(540, 550) 및 CE(560)가 설정된 수신한 패킷에 상응하는 상향링크 패킷(예를 들어, TCP ACK)의 TCP 헤더 내에 ECE(ECN-echo)(570) 필드를 설정하고 송신 측에 혼잡이 발생하였음을 알릴 수 있다.
수신 측으로부터 ECE 필드가 설정된 TCP ACK를 수신한 송신 측은 혼잡이 발생하였음을 인지하고, 혼잡 윈도우(또는, 송신 윈도우)의 크기를 줄여 송신하는 데이터의 전송율을 낮출 수 있다.
본 개시의 일 실시예에 따르면, 혼잡 윈도우의 크기를 줄인 송신 측은 데이터의 전송율을 낮추었고 ECE 필드의 설정을 잘 받았다는 것을 수신 측에 알리기 위하여, 수신 측으로 전송하는 패킷의 TCP 헤더 내에 CWR(Congestion Window Reduced)를 설정하여 전송할 수 있다.
다만, 도 5에서의 혼잡 상황을 제어하는 동작은 단말과 라우터, 라우터와 서버가 유선 연결된 상황에서의 송신 측과 수신 측에서의 혼잡 상황 제어 동작을 설명한다. 혼잡 상황 제어 동작을 무선 시스템에서도 적용하였을 때, 단말과 라우터의 무선 통신으로 혼잡 상황을 인지하기가 어려울 수 있다. 즉, 단말과 라우터간 무선 구간의 혼잡 상황을 데이터를 전송하는 서버가 인지하기가 어려울 수 있다. 무선 시스템에서 송신 측이 유선 연결된 상황보다 혼잡 상황을 인지 및 혼잡 상황을 빠르게 제어할 수 없어, 무선 통신 시스템의 품질이 떨어질 수 있다는 문제점이 있을 수 있다. 이에 따라, 이하, 도 6에서 무선 통신 시스템에서 기지국의 TCP 혼잡 상황을 제어하기 위한 동작을 구체적으로 설명한다.
도 6은 본 개시의 다양한 실시예들에 따른 무선 통신 시스템에서 기지국이 TCP 혼잡 상황을 감지하는 예(600)를 도시한다.
기지국은 단말과 서버 간의 통신을 중계하는 역할을 수행할 수 있다. 예를 들어, 단말이 서버로 전송하는 TCP 패킷을 전달하고, 서버가 단말로 전송하는 TCP 패킷을 전달하는 역할을 수행할 수 있다.
도 6을 참조하면, 기지국(620)은 단말(630)과 서버(610)간의 통신을 중계하는 역할을 수행할 수 있으며, 단말(630)이 서버(610)로 전송하는 데이터의 통신 상태를 확인할 수 있다. 예를 들어, 기지국(620)은 단말(630)과 기지국(620)사이의 무선 통신 구간인 Air 구간(640)에서의 데이터의 통신 상태를 확인할 수 있다.
본 개시의 일 실시예에 따르면, 기지국(620)은 Air 구간(640)에서의 데이터의 통신 상태를 확인하기 위하여, PDCP 계층(예를 들어, 도 3의 330)에서 RLC 계층(예를 들어, 도 3의 340)으로 전달되지 못하고 버퍼(예를 들어, 도 2의 235)에 저장된 PDCP SDU의 크기가 버퍼의 임계 용량(예를 들어, 도 4의 435)과 같거나 큰지 여부를 판단할 수 있다.
본 개시의 일 실시예에 따르면, 기지국(620)은 PDCP 계층의 버퍼에 저장된 PDCP SDU의 크기가 버퍼의 임계 용량과 같거나 큰 경우, PDCP 계층에서 RLC 계층에서 데이터가 전달되지 못하거나, RLC 계층에서 데이터가 빠르게 처리되고 있지 못하는 혼잡 상황임을 인지할 수 있다. (650) 기지국(620)은 TCP 혼잡 상황을 인지한 경우, 단말(630)에서 서버(610)로 전송하는 데이터에 TCP 혼잡 상황을 지시하는 정보를 포함시킬 수 있다. 예를 들어, 기지국(620)은 단말(630)에서 서버(610)로 전송되는 TCP ACK(Acknowledgement)의 헤더 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시킬 수 있다. 기지국의 동작에 따라 TCP 혼잡 상황을 지시하는 정보를 포함하게 된 TCP ACK는 서버로 전달될 수 있다. TCP 혼잡 상황을 지시하는 정보는 TCP 혼잡 상황 제어를 유도하는 TCP ECE(ECN-echo) 필드에 포함될 수 있다. 예를 들어, 기지국은 단말에서 서버로 전달되는 제1 TCP ACK의 헤더 내에 TCP 혼잡 상황의 제어를 유도하는 ECE(ECN-echo) 필드를 설정하였다는 정보를 포함시키고, 상기 정보를 포함시킨 제2 TCP ACK를 서버로 전송할 수 있다. 필드를 설정한다는 것은 필드의 값을 변경하거나 또는 필드의 값을 0 또는 1로 설정한다는 의미를 포함한다.
본 개시의 일 실시예에 따르면, 기지국(620)이 서버(610)로 제2 TCP ACK를 전송하는 과정은, 서버(610)가 기지국(620)으로 전송하는 TCP 패킷에 CWR(Congestion Window Reduced)를 설정(670)하여 기지국으로 전송할 때까지 유지될 수 있다. 즉, 기지국(620)은 서버(610)로부터 수신한 TCP 패킷에 CWR이 설정(670)되어있고, 기지국(620)의 PDCP 계층의 무선 베어러에 흐르는 동일 TCP Flow에 CWR이 설정되어 있으면 ECE 필드를 설정하였다는 정보를 포함시킨 제2 TCP ACK를 전송하는 동작을 중단할 수 있다.
본 개시의 일 실시예에 따르면, 기지국(620)으로부터 TCP 혼잡 상황을 지시하는 정보를 포함하는 데이터를 수신한 서버(610)는 TCP 혼잡 상황을 지시하는 정보에 기반하여 혼잡 상황을 인지할 수 있다. (660) 또한, 서버(610)는 서버(610)측 데이터의 송신 윈도우(또는, 혼잡 윈도우)의 크기를 조절할 수 있다. 예를 들어, 단말이 서버로 전송하는 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황의 제어를 유도하는 ECE 필드의 설정을 포함한 제2 TCP ACK를 수신한 서버(610)는, TCP 혼잡 상황을 인지할 수 있으며, 서버(610)측 데이터의 송신 윈도우의 크기를 조절할 수 있다. 서버(610)가 송신 윈도우의 크기를 조절함으로써, 망에서의 전송 지연 시간과 처리 지연 시간을 제거하여 이에 따른 TCP 혼잡 상황의 지속 시간을 감소시키며, 망에서의 트래픽의 혼잡에 빠르게 대처할 수 있으므로, 망의 안정화를 가져올 수 있다.
본 개시의 일 실시예에 따르면, 혼잡 윈도우의 크기를 조절한 서버(610)는 기지국(620)을 통해 단말(630)로 전송하는 TCP 패킷에 송신 윈도우의 크기를 조절하였다는 CWR 필드를 설정할 수 있다. 서버(610)가 단말(630)로 전송하는 TCP 패킷의 TCP 헤더 내에는 설정된 CWR 필드가 포함될 수 있다.
도 7은 본 개시의 다양한 실시예들에 따른 TCP 세그먼트(segment)(700)의 구성을 도시한다. 도 7은 전형적인 32비트 TCP 세그먼트 구조를 도시하고 있다. TCP 세그먼트는 수신 포트를 식별하는 목적지 포트(destination port)(16비트) 뿐만 아니라 전송 포트를 식별하는 소스 포트(source port)(16비트)를 포함한다.
도 7을 참조하면, TCP 세그먼트(700)는 시퀀스 번호를 포함할 수 있다. 예를 들어, SYN(Synchronize Sequence Numbers) 플래그가 셋(1)이면, 이것은 초기 시퀀스 번호가 된다. 실제 첫 번째 데이터 바이트의 시퀀스 번호 및 이에 대응하는 ACK에서의 ACK 번호는 이 시퀀스 번호에 1을 더한 값이 된다. 그러나 SYN 플래그가 클리어(0)이면, 이것은 현재 세션에 대한 패킷의 첫 번째 데이터 바이트의 누적 시퀀스 번호가 된다. 그러나 SYN 플래그가 클리어(0)이면, 이것은 현재 세션에 대한 패킷의 첫 번째 데이터 바이트의 누적 시퀀스 번호가 된다. ACK 번호(32비트)에 관하여, ACK 플래그가 셋이면 그 때 ACK 번호 필드의 값은 수신기가 예상하고 있는(만약 이전 바이트가 있다면, 모든 이전 바이트의 수신을 응답한다) 다음 시퀀스 번호이다. 각 엔드(end)에서 전송 한 첫 번째 ACK는 노데이터(no data)를 제외하고는 다른 엔드의 초기 시퀀스 번호 자체를 확인 응답한다. 데이터 오프셋(4비트)은 TCP 헤더(TCP Header)의 크기를 32비트 워드(32-bit words)로 지정한다. 최소 크기의 헤더는 5워드이고 최대는 15워드이며, 따라서 최소 20바이트 및 최대 60바이트를 제공하며, 헤더에 옵션 (option)을 40 바이트까지 허용한다. 이 필드는 또한 TCP 세그먼트의 시작부터 실제 데이터까지 오프셋 (offset)이라는 사실에서 필드의 네임(name)을 가져온다. 예약 필드(reserved field)(4비트)는 장래 사용을 위해 지정되고 현재 0으로 설정되어야 한다.
TCP 세그먼트는 다음의 8개의 1비트 플래그들(총 8비트)을 더 포함한다: (i) ECE(ECN-Echo) 플래그 세트 (flag set)(720)가 있는 TCP 세그먼트를 수신하고, 혼잡 제어 메커니즘에 응답한 것 을 표시하기 위해 전송 호스트에 의해 설정되는 CWR(Congestion Window Reduced) 플래그(710); (ii) (a) SYN(Synchronize Sequence numbers) 플래그가 셋(1)이면 TCP 피어(peer)가 ECN(Explicit Congestion Notification) 가능(capable)이고, (b) SYN 플래그가 클리어(0)이면 IP 헤더 세트(header set)에서 CE(Congestion Experienced) 플래그가 있는 패킷이 정상적인 전송(RFC 3168에 의해 헤더에 추가) 중에 수신되었음을 표시하기 위한 ECE 플래그(720); (iii) 긴급 포인터 필드(Urgent pointer field)가 감속시키며 (significant)임을 표시하기 위한 URG 플래그; (iv) 확인응답 필드(Acknowledgment field)가 시그니피컨트(클라이언트가 최초 SYN 패킷을 전송한 후 모든 패킷들은 이 플래그 세트를 가져야 함)임을 표시하기 위한 ACK 플래그; (v) 수신 애플리케이션에 버퍼링된 데이터를 푸시(push)하기를 요청하는 PSH(Push function) 플래그; (vi) 접속을 리셋하는 RST 플래그; (vii) SYN 플래그-각 엔드에서 전송한 첫 번째 패킷만이 이 플래그 세트를 가져야 함(일부 다른 플래그들은 이 플래그에 따라 의미를 변경하고, 일부는 그것이 셋일 때에만 유효 하고, 다른 것들은 그것이 클리어일 때에만 유효함); (viii) 전송자로부터 더 이상 데이터가 없음을 표시하기 위한 FIN 플래그. 윈도우 크기(window size)(16비트)(740)는 수신 윈도우(receive window)의 크기를 나타내며, 수신기가 현재 기꺼이 수신(아래 흐름 제어와 윈도우 스케일링(Window Scaling) 참조)하고 있는 바이트의 수(응답 필드에서 시퀀스 번호 이상의)를 명시한다. 체크섬(checksum)(16비트)(730) 은 헤더 및 데이터의 에러 체킹을 위해 사용될 수 있다. URG 플래그가 셋이면 긴급 포인터(16비트)는 이 16비트 필드가 마지막 긴급 데이터 바이트를 표시하는 시퀀스 번호로부터 오프셋임을 표시할 수 있다. 옵션들은 32로 나누어 떨어지는 변수 0-320비트이다. 옵션 필드의 길이는 데이터 오프셋 필드에 의해 결정된다. 옵션 0 및 1의 길이는 단일 바이트(8비트)이다. 잔여 옵션들은 두 번째 바이트에서 옵션(바이트로 표시)의 총 길이를 표시한다. TCP 헤더 패딩(padding)은 32비트 경계에서 TCP 헤더가 종료되고 데이터가 시작하는 것을 보장하기 위해 사용되며, 단지 제로로 구성되어 있다.
도 8은 본 개시의 다양한 실시예들에 따른 NR 시스템에서의 계층 구조를 도시한다.
NR 시스템은 송신 용량, 송신 지연 및 배치 용이성의 관점에서 중앙 유닛(Central Unit, CU)(810)과 분산 유닛(Distributed Unit, DU)(820)을 분리하는 기능 분리(function split) 기술을 도입하여, gNB(800)를 두 개의 논리 네트워크 요소인 CU(810)와 DU(820)로 재구성할 수 있다. CU 제어 평면(Control Plane), 즉, CU-CP는 F1-C 인터페이스를 이용하여 DU(820)와 통신하며, CU 사용자 평면(User Plane), 즉, CU-UP는 F1-U 인터페이스를 이용하여 DU(820)와 통신한다. 또한, CU-CP와 CU-UP는 E1 인터페이스를 이용하여 통신한다.
도 8을 참조하면, CU-CP는 RRC 계층 및 PDCP 계층을 포함하고, CU-CP는 SDAP 계층 및 PDCP 계층을 포함하도록 구성될 수 있다. DU(820)는 RLC 계층, MAC 계층, 및 PHY 계층을 포함하도록 구성될 수 있다. 다만, 도 8은 기능 분리(function split) 구조의 일 예를 도시하는 것이고, 이에 한정되지 않고, CU(810)와 DU(820)가 어떤 기능 또는 계층을 포함하는지 여부에 따라 다양한 기능 분리(function split) 구조가 제공될 수 있다.
본 개시의 일 실시예에 따르면, CU(810)에서 DU(820)로 전송되는 데이터의 양이 DU(820)가 전송받을 수 있는 양을 초과하거나 또는 DU(820)에서 CU(810)로부터 전달받은 데이터가 처리되지 않는 경우에, CU(810)는 DU(820)로 데이터를 전달하지 못할 수 있다. 예를 들어, CU-CP의 PDCP 계층이 DU(820)의 RLC 계층이 수신할 수 있는 데이터의 양을 초과한 데이터를 전달하려는 경우, CU(810)는 DU(820)로 데이터를 전달하지 못할 수 있다. 이때, 데이터는 PDCP SDU일 수 있다.
본 개시의 일 실시예에 따르면, CU(810)에서 DU(820)로 데이터가 전달되지 못하는 경우, CU(810)는 PDCP 계층 내의 버퍼에 전달하지 못한 데이터를 임시로 저장할 수 있다. 즉, CU(810)에서 DU(820)로 데이터가 전달되지 못하는 경우, CU(810)의 PDCP 계층에서 데이터가 폐기(혹은 손실)되지 않고 버퍼에 저장될 수 있다.
본 개시의 일 실시예에 따르면, gNB(800)는 CU(810)의 PDCP 계층내의 버퍼에 저장된 데이터의 크기가 버퍼의 미리 설정된 임계(threshold) 용량(예를 들어, 도 4의 435)과 같거나 큰 경우, gNB(800)는 TCP 패킷들이 원활하게 전달되지 못하는 TCP 혼잡 상황임을 인지할 수 있다.
본 개시의 일 실시예에 따르면, gNB(800)는 단말에서 서버로 전송되는 TCP ACK(Acknowledgement)의 헤더 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시킬 수 있다. gNB(800)의 동작에 따라 TCP 혼잡 상황을 지시하는 정보를 포함하게 된 TCP ACK는 서버로 전달될 수 있다. TCP 혼잡 상황을 지시하는 정보는 TCP 혼잡 상황 제어를 유도하는 TCP ECE(ECN-echo) 필드에 포함될 수 있다. 예를 들어, gNB(800)는 버퍼에 저장된 PDCP SDU의 크기가 미리 설정된 단말에서 서버로 전달되는 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황의 제어를 유도하는 ECE(ECN-echo) 필드를 설정하였다는 정보를 포함시키고, 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황의 제어를 유도하는 ECE 필드의 설정을 포함한 제2 TCP ACK를 서버로 전송할 수 있다. 필드를 설정한다는 것은 필드의 값을 변경하거나 또는 필드의 값을 0 또는 1로 설정한다는 의미를 포함한다.
도 9는 본 개시의 다양한 실시예들에 따른 기지국의 동작(900)을 도시한다.
도 9를 참조하면, 단계 900에서, 기지국(예를 들어, 도 1의 120)은 PDCP 계층(예를 들어, 도 3의 330)에서 하위 계층(예를 들어, 도 3의 RLC 계층(340))으로 PDCP SDU가 전달이 가능한지 여부를 판단할 수 있다. PDCP 계층에서 RLC 계층으로 PDCP SDU가 전달하지 못하는 경우, 단계 920을 수행할 수 있다.
단계 920에서, 기지국은 PDCP 계층에서 RLCL 계층으로 전달되지 못하는 PDCP SDU를 PDCP 내의 버퍼(예를 들어, 도 4의 235)에 저장할 수 있다. 본 개시의 일 실시예에 따르면, 버퍼에 저장되는 무선 베어러에 존재하는 PDCP SDU는 TCP(Transmission Control Protocol) 패킷을 포함할 수 있으며, TCP 패킷은 폐기(혹은 손실)되지 않고 버퍼(235)에 임시 저장될 수 있다.
단계 930에서, 기지국은 PDCP 계층 내 버퍼에 저장된 PDCP SDU의 크기가 미리 설정된 버퍼의 임계용량과 같거나 큰지 여부를 판단할 수 있다. 버퍼에 저장된 PDCP SDU의 크기가 버퍼의 임계용량과 같거나 큰 경우 단계 940을 수행하고, PDCP SDU의 크기가 버퍼의 임계용량보다 작은 경우, 기지국은 PDCP 계층에서 RLC 계층으로 전송되지 못하는 PDCP SDU를 계속하여 버퍼에 저장할 수 있다.
단계 940에서, 기지국은 버퍼에 저장된 PDCP SDU의 크기가 버퍼의 임계 용량과 같거나 큰 경우, PDCP 계층에서 RLC 계층에서 데이터가 전달되지 못하거나, RLC 계층에서 데이터가 빠르게 처리되고 있지 못하는 혼잡 상황임을 인지할 수 있다. 즉, 기지국은 기지국과 단말 사이의 통신 구간인 Air 구간(예를 들어, 도 6의 640)에서의 데이터의 통신 상태를 확인할 수 있다.
본 개시의 일 실시예에 따르면, 기지국이 TCP 패킷의 혼잡 상황을 인지한 경우, 단말에서 서버로 전송하는 TCP 패킷에 TCP 혼잡 상황을 지시하는 정보를 포함시킬 수 있다. 기지국은 단말에서 서버로 전송되는 제1 TCP ACK(Acknowledgement)의 헤더 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시킬 수 있다. 예를 들어, 기지국은 버퍼에 저장된 PDCP SDU의 크기가 미리 설정된 단말에서 서버로 전달되는 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황의 제어를 유도하는 ECE(ECN-echo) 필드를 포함하는 제2 TCP ACK를 서버로 전달할 수 있다. TCP 혼잡 상황을 지시하는 정보는 제2 TCP ACK의 헤더 내의 TCP 혼잡 상황 제어를 유도하는 TCP ECE(ECN-echo) 필드에 포함될 수 있다.
본 개시의 일 실시예에 따르면, 제1 TCP ACK 내의 필드에 TCP 혼잡 상황을 지시하는 정보를 포함시키면, 상기 TCP 혼잡 상황을 지시하는 정보에 기반하여 TCP checksum 값은 재계산될 수 있다.
단계 950에서, 기지국은 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황의 제어를 유도하는 ECE 필드의 설정을 포함한 제2 TCP ACK를 서버로 전달할 수 있다. 즉, 제2 TCP ACK는 TCP 헤더 내의 필드에 ECE 필드를 설정한 정보를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 기지국으로부터 TCP 혼잡 상황을 지시하는 정보를 포함하는 데이터를 수신한 서버는 혼잡 상황을 인지할 수 있다. 또한, 서버는 서버측 데이터의 송신 윈도우의 크기를 조절할 수 있다. 즉, 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황의 제어를 유도하는 ECE 필드의 설정을 포함한 제2 TCP ACK를 수신한 서버는 TCP 혼잡 상황을 인지할 수 있으며, 서버측 데이터의 송신 윈도우의 크기를 조절할 수 있다.
단계 960에서, 기지국은 서버로부터 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 패킷을 수신할 수 있다. 기지국이 서버로부터 수신한 패킷은 TCP 패킷을 포함할 수 있다.
본 개시의 일 실시예에 따르면, TCP 혼잡 상황을 확인하였다는 정보는 혼잡 윈도우의 크기를 조절한 서버가 기지국을 통해 단말로 전송하는 TCP 패킷의 TCP 헤더(header) 내의 송신 윈도우의 크기를 조절하였다는 CWR 필드에 포함될 수 있다.
본 개시의 일 실시예에 따르면, 기지국은 서버가 단말로 전송하는 TCP 패킷의 TCP 헤더 내의 CWR 필드에 기반하여, 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황을 지시하는 정보를 포함하는 단계 940 내지 950의 기지국의 동작을 중단할 수 있다. 즉, 기지국이 서버가 단말로 전송하는 TCP 패킷의 CWR 필드의 설정 정보를 확인하고, PDCP 계층의 무선 베어러에 흐르는 동일 TCP Flow에 CWR이 설정되어 있으면 중단될 수 있다. 즉, 서버로부터 TCP 패킷의 헤더 내의 CWR 필드 설정을 확인한 기지국은 단말에서 서버로 전달하는 제1 TCP ACK에 ECE 필드를 설정한 제2 TCP ACK를 서버로 전달하는 동작을 중단할 수 있다.
다만, 상기 기지국의 동작 및 동작의 순서는 상술한 실시예에 한정되는 것은 아니다.
도 10은 본 개시의 다양한 실시예들에 따른 무선 통신 시스템에서 서버(1000)의 구성을 도시한다. 서버(1000)는, 통신부(1010), 제어부(1020), 메모리부(1030)를 포함하여 구성된다.
이하 사용되는 '…부', '…기' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어, 또는, 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 10을 참조하면, 통신부(1010)는 네트워크 내 다른 노드들과 통신을 수행하기 위한 인터페이스를 제공할 수 있다. 즉, 통신부(1010)는, 서버(1000)에서 다른 노드, 예를 들어, 기지국, 코어망 등으로 송신되는 비트열을 물리적 신호로 변환하고, 상기 다른 노드로부터 수신되는 물리적 신호를 비트열로 변환할 수 있다.
본 개시의 다양한 실시예들에 따른 통신부(1010)는, 기지국을 통해 전달된 단말로부터의 데이터에 대한 정보, TCP 혼잡 상황 발생 여부에 대한 정보 중 적어도 하나에 기초하여 응답 메시지를 송신하기 위해 결정한 주기에 따라 응답 메시지를 기지국으로 송신할 수 있다.
메모리부(1030)는, 서버(1000)의 동작을 위한 기본 프로그램, 응용 프로그램, 설정 정보 등의 데이터를 저장할 수 있다. 메모리부(1030)는 제어부(1020)의 요청에 따라 저장된 데이터를 제공한다.
본 개시의 다양한 실시예들에 따라, 상기 메모리부(1030)는 기지국을 통해 전달된 단말로부터의 데이터에 대한 정보, TCP 혼잡 상황 발생 여부에 대한 정보 중 적어도 하나를 포함하는 응답 메시지를 저장할 수 있다.
제어부(1020)는 서버(1000)의 전반적인 동작들을 제어할 수 있다. 예를 들어, 제어부(1020)는, 통신부(1010)를 통해 신호를 송수신할 수 있다. 또한, 제어부(1020)는 메모리부(1030)에 데이터를 기록하고, 읽을 수 있다. 이를 위해, 제어부(1020)는 적어도 하나의 프로세서(processor)를 포함할 수 있다.
본 개시의 다양한 실시예들에 따라, 상기 제어부(1020)는 기지국을 통해 전달된 단말로부터의 데이터에 대한 정보, TCP 혼잡 상황 발생 여부에 대한 정보 중 적어도 하나에 기초하여 응답 메시지를 송신하기 위한 주기를 결정할 수 있다.
도 11은 본 개시의 다양한 실시예들에 따른, 무선 통신 시스템에서 기지국(1100)의 구성을 도시한다.
이하 사용되는 '…부', '…기' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어, 또는, 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 11를 참조하면, 기지국(1100)은 무선 통신부(1110), 백홀(backhaul) 통신부(1120), 메모리부(1130), 제어부(1140)를 포함하여 구성된다.
무선 통신부(1110)는, RF 처리부(미도시) 및 기저대역 처리부(미도시)를 포함할 수 있다. RF 처리부(미도시)는, 신호의 대역 변환, 증폭 등 무선 채널을 통해 신호를 송수신하기 위한 기능을 수행할 수 있다. 즉, RF 처리부(미도시)는 상기 기저대역 처리부(미도시)로부터 제공되는 기저대역 신호를 RF 대역 신호로 상향변환한 후 안테나를 통해 송신하고, 상기 안테나를 통해 수신되는 RF 대역 신호를 기저대역 신호로 하향변환 한다. 예를 들어, 상기 RF 처리부(미도시)는 송신 필터, 수신 필터, 증폭기, 믹서, 오실레이터, DAC, ADC 등을 포함할 수 있다. 기지국(1100)은 다수의 안테나들을 구비할 수 있다. 또한, RF처리부(미도시)는 다수의 RF 체인들을 포함할 수 있다. 나아가, 상기 RF 처리부(미도시)는 빔포밍을 수행할 수 있다. 빔포밍을 위해, RF 처리부(미도시)는 다수의 안테나들 또는 안테나 요소들을 통해 송수신되는 신호들 각각의 위상 및 크기를 조절할 수 있다.
또한, 무선 통신부(1110)는 신호를 송수신할 수 있다. 이를 위해, 무선 통신부(1110)는 적어도 하나의 송수신기(transceiver)를 포함할 수 있다. 무선 통신부(1110)는 하향링크 신호를 수신할 수 있다. 하향링크 신호는 동기 신호(synchronization signal, SS), 기준 신호(reference signal, RS)(예: CRS(cell-specific reference signal), DM(demodulation)-RS), 시스템 정보(예: MIB, SIB, RMSI(remaining system information), OSI(other system information)), 설정 메시지(configuration message), 제어 정보(control information) 또는 하향링크 데이터 등을 포함할 수 있다. 또한, 통신부(1801)는 상향링크 신호를 전송할 수 있다. 상향링크 신호는 랜덤 액세스 관련 신호(예: 랜덤 액세스 프리앰블(random access preamble, RAP)(또는 Msg1(message 1)), Msg3(message 3)), 기준 신호(예: SRS(sounding reference signal), DM-RS), 또는 전력 헤드룸 보고(power headroom report, PHR) 등을 포함할 수 있다.
또한, 무선 통신부(1110)는 서로 다른 주파수 대역의 신호들을 처리하기 위해 서로 다른 통신 모듈들을 포함할 수 있다. 나아가, 무선 통신부(1110)는 서로 다른 다수의 무선 접속 기술들을 지원하기 위해 다수의 통신 모듈들을 포함할 수 있다. 예를 들어, 서로 다른 무선 접속 기술들은 블루투스 저 에너지(bluetooth low energy, BLE), Wi-Fi(Wireless Fidelity), WiGig(WiFi Gigabyte), 셀룰러 망(예: LTE(Long Term Evolution), NR(new radio) 등을 포함할 수 있다. 또한, 서로 다른 주파수 대역들은 극고단파(super high frequency, SHF)(예: 2.5GHz, 5Ghz) 대역, mm파(millimeter wave)(예: 38GHz, 60GHz 등) 대역을 포함할 수 있다. 또한 통신부(1310)는 서로 다른 주파수 대역(예: LAA(licensed Assisted Access)를 위한 비면허 대역, CBRS(citizens broadband radio service)(예: 3.5 GHz)) 상에서 동일한 방식의 무선 접속 기술을 이용할 수도 있다.
무선 통신부(1110)는 상술한 바와 같이 신호를 송신 및 수신할 수 있다. 이에 따라, 무선 통신부(1110)의 전부 또는 일부는 '송신부', '수신부' 또는 '송수신부'로 지칭될 수 있다. 또한, 이하 설명에서 무선 채널을 통해 수행되는 송신 및 수신은 무선 통신부(1110)에 의해 상술한 바와 같은 처리가 수행되는 것을 포함하는 의미로 사용된다.
본 개시의 다양한 실시예들에 따르면, 기저대역 처리부(미도시)는, 시스템의 물리 계층 규격에 따라 기저대역 신호 및 비트열 간 변환 기능을 수행할 수 있다. 예를 들어, 데이터 송신 시, 기저대역 처리부(미도시)는, 송신 비트열을 부호화 및 변조함으로써 복소 심벌들을 생성한다. 또한, 데이터 수신 시, 기저대역 처리부(미도시)는, RF 처리부(미도시)로부터 제공되는 기저대역 신호를 복조 및 복호화를 통해 수신 비트열을 복원한다. 예를 들어, OFDM 방식에 따르는 경우, 데이터 송신 시, 기저대역 처리부(미도시)는, 송신 비트열을 부호화 및 변조함으로써 복소 심벌들을 생성하고, 복소 심벌들을 부반송파들에 매핑한 후, IFFT 연산 및 CP 삽입을 통해 OFDM 심벌들을 구성한다. 또한, 데이터 수신 시, 기저대역 처리부(미도시)는, RF 처리부(미도시)로부터 제공되는 기저대역 신호를 OFDM 심벌 단위로 분할하고, FFT 연산을 통해 부반송파들에 매핑된 신호들을 복원한 후, 복조 및 복호화를 통해 수신 비트열을 복원한다. 기저대역 처리부(미도시) 및 상기 RF 처리부(미도시)는 상술한 바와 같이 신호를 송신 및 수신한다. 이에 따라, 기저대역 처리부(미도시) 및 RF 처리부(미도시)는 송신부, 수신부, 송수신부, 또는 통신부로 지칭될 수 있다.
본 개시의 다양한 실시예들에 따른 무선 통신부(1110)는, 단말로부터 데이터를 수신할 수 있다. 또한 상기 무선 통신부(1110)는, 서버가 단말로 송신한 응답 메시지를 단말로 전달할 수 있다.
백홀 통신부(1120)는, 네트워크 내 다른 노드들과 통신을 수행하기 위한 인터페이스를 제공할 수 있다. 즉, 백홀 통신부(1120)는, 기지국(1100)에서 다른 노드, 예를 들어, 다른 기지국, 코어망 등으로 송신되는 비트열을 물리적 신호로 변환하고, 다른 노드로부터 수신되는 물리적 신호를 비트열로 변환할 수 있다.
본 개시의 다양한 실시예들에 따른 백홀 통신부(1120)는, 서버로부터 서버가 단말로 송신하는 응답 메시지를 수신할 수 있다.
메모리부(1130)는, 기지국(1100)의 동작을 위한 기본 프로그램, 응용 프로그램, 설정 정보 등의 데이터를 저장할 수 있다. 메모리부(1130)는, 제어부(1140)의 요청에 따라 저장된 데이터를 제공할 수 있다.
제어부(1140)는, 기지국(1100)의 전반적인 동작들을 제어할 수 있다. 예를 들어, 제어부(1140)는, 무선 통신부(1110)를 통해 또는 백홀 통신부(1120)를 통해 신호를 송수신한다. 또한, 제어부(1140)는, 메모리부(1130)에 데이터를 기록하고, 읽을 수 있다. 이를 위해, 제어부(1140)는 적어도 하나의 프로세서(processor)를 포함할 수 있다.
도 12는 본 개시의 다양한 실시예들에 따른, 무선 통신 시스템에서 단말(1200)의 구성을 도시한다.
이하 사용되는 '...부', '...기' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어, 또는, 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 12를 참조하면, 단말(1200)은 통신부(1210), 메모리부(1230), 제어부(1240)를 포함할 수 있다.
통신부(1210)는 안테나를 통해 입출력되는 데이터의 무선신호를 송수신 처리하는 기능을 수행할 수 있다. 예를 들어, 송신인 경우, 송신할 데이터를 채널 코닝(channel coding)한 후, RF처리하여 송신하는 기능을 수행하고, 수신인 경우, 수신된 RF신호를 기저대역신호로 변환하고 기저대역신호를 채널 복호(channel decoding)하여 데이터를 복원하는 기능을 수행할 수 있다.
본 개시의 다양한 실시예들에 따른 통신부(1210)는, 복수의 전송 제어 프로토콜 연결들 각각을 통해 기지국으로 데이터를 송수신할 수 있다. 통신부(1210)는 이동 통신 망과의 통신을 위한 제1 통신 모듈 및 무선 랜과의 통신을 위한 제2 통신 모듈을 포함할 수 있다.
메모리부(1230)는 제어부(1240)의 처리 및 제어를 위한 프로그램의 마이크로코드와 각종 참조 데이터를 저장할 수 있다.
본 개시의 다양한 실시예들에 따른 메모리부(1230)는, 통신부(1210)가 이동 통신 망과의 통신을 위한 제1 통신 모듈을 통해 데이터를 송신할 경우, 측정된 버퍼 크기, 버퍼 상태 보고, 변조 및 부호화 방식, 할당된 자원 블록, 무선 링크 제어 버퍼 크기 중 적어도 하나에 관한 정보를 포함하는 망 정보를 저장할 수 있다. 메모리부(1230)는 통신부(1210)가 무선 랜과의 통신을 위한 제2 통신 모듈을 통해 데이터를 송신할 경우, 최대 집합 크기(maximum aggregation size), MAC(media access control) 버퍼 크기 중 적어도 하나에 관한 정보를 저장할 수 있다.
제어부(1240)는, 제어 장치의 전반적인 동작을 제어할 수 있다. 예를 들어, 서버로 전송하는 TCP ACK를 포함하는 데이터의 통신을 위한 처리 및 제어를 수행한다.
본 개시의 다양한 실시예들에 따른 제어부(1240)는 망 정보에 기초하여 송신 가능한 데이터의 최대 크기를 결정하고, 송신 가능한 데이터의 크기에 기초하여 복수의 TCP 연결들 각각의 전송 속도를 결정할 수 있다. 제어부(1240)는 상기 복수의 TCP 연결들의 개수, 상기 복수의 TCP 연결들 각각이 사용하는 서비스의 가중치 정보, 상기 복수의 TCP 연결들 각각이 사용하는 데이터 전송량 중 적어도 하나에 기초하여, 상기 복수의 TCP 연결들 각각의 전송 속도를 결정할 수 있다.
제어부(1240)는 결정된 송신 가능한 데이터의 최대 크기를 복수의 TCP 연결들 각각에 분배함으로써, 복수의 TCP 연결들 각각의 전송 속도를 결정할 수 있다.
도 12에 도시된 단말(1200)의 구성은, 기지국의 일 예일뿐, 도 12에 도시된 구성으로부터 본 개시의 다양한 실시예들을 수행하는 단말의 예가 한정되지 않는다. 즉, 다양한 실시예들에 따라, 일부 구성이 추가, 삭제, 변경될 수 있다.
한편, 본 개시의 다양한 실시예들은 본 개시의 기술 내용을 쉽게 설명하고 본 개시의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 개시의 범위를 한정하고자 하는 것은 아니다. 즉 본 개시의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 개시의 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한 상기 각각의 실시예는 필요에 따라 서로 조합되어 운용할 수 있다.
상술한 바와 같이, 본 개시의 다양한 실시예에 따른 무선 통신 시스템에서 기지국에 수행되는 방법은, PDCP(packet data control protocol) 계층에서 하위계층으로 PDCP SDU(service data unit)를 전달하지 못하는 경우, 버퍼(buffer)에 PDCP SDU를 저장하는 단계, 버퍼에 저장된 PDCP SDU의 크기가 미리 설정된 임계(threshold) 용량과 같거나 큰 경우 단말이 서버로 전송하는 제1 TCP(transmission control protocol) ACK(acknowledgement)의 헤더(header) 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 단계, 서버로, TCP 혼잡 상황을 지시하는 정보를 포함하는 제2 TCP ACK를 전송하는 단계, 서버로부터 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 TCP 패킷을 수신하는 단계를 포함할 수 있다.
본 개시의 다양한 실시예에 따르면, 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 단계는, TCP 혼잡 상황을 지시하는 정보에 기반하여 TCP checksum 값을 재계산하는 단계를 더 포함할 수 있다.
본 개시의 다양한 실시예에 따르면, 제2 TCP ACK는 제1 TCK ACK에서 TCP 혼잡 상황을 지시하는 정보를 포함할 수 있다.
본 개시의 다양한 실시예에 따르면, TCP 혼잡 상황을 확인하였다는 정보는 TCP 패킷의 TCP 헤더(header) 내의 CWR(congestion window reduced) 필드에 포함될 수 있다.
본 개시의 다양한 실시예에 따르면, 서버로부터 수신한 TCP 패킷의 TCP 헤더 내의 CWR 필드에 기반하여, 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 단계를 중단하는 단계를 더 포함할 수 있다.
본 개시의 다양한 실시예에 따르면, 단말로, 서버로부터 수신한 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 패킷을 전달하는 단계를 더 포함할 수 있다.
본 개시의 다양한 실시예에 따르면, TCP 혼잡 상황을 지시하는 정보는 제2 TCP ACK의 헤더 내의 TCP 혼잡 상황 제어를 유도하는 TCP ECE(ECN-echo) 필드에 포함될 수 있다.
본 개시의 다양한 실시예에 따르면, 하위계층은 RLC(radio link control) 계층을 포함할 수 있다.
상술한 바와 같이, 본 개시의 다양한 실시예에 따른 무선 통신 시스템에서 기지국의 장치는, 통신부, 적어도 하나의 프로세서를 포함하여, 적어도 하나의 프로세서는, PDCP(packet data control protocol) 계층에서 하위계층으로 PDCP SDU(service data unit)를 전달하지 못하는 경우, 버퍼(buffer)에 PDCP SDU를 저장하고, 버퍼에 저장된 PDCP SDU의 크기가 미리 설정된 임계(threshold) 용량과 같거나 큰 경우 단말이 서버로 전송하는 제1 TCP(transmission control protocol) ACK(acknowledgement)의 헤더(header) 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시키며, 서버로, TCP 혼잡 상황을 지시하는 정보를 포함하는 제2 TCP ACK를 전송하고, 서버로부터 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 TCP 패킷을 수신하도록 제어할 수 있다.
본 개시의 다양한 실시예에 따르면, 적어도 하나의 프로세서는, TCP 혼잡 상황을 지시하는 정보에 기반하여 TCP checksum 값을 재계산하도록 제어할 수 있다.
본 개시의 다양한 실시예에 따르면, 제2 TCP ACK는 제1 TCK ACK에서 TCP 혼잡 상황을 지시하는 정보를 포함할 수 있다.
본 개시의 다양한 실시예에 따르면, TCP 혼잡 상황을 확인하였다는 정보는 TCP 패킷의 TCP 헤더(header) 내의 CWR(congestion window reduced) 필드에 포함될 수 있다.
본 개시의 다양한 실시예에 따르면, 적어도 하나의 프로세서는, 서버로부터 수신한 TCP 패킷의 TCP 헤더 내의 CWR 필드에 기반하여, 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 동작을 중단하도록 제어할 수 있다.
본 개시의 다양한 실시예에 따르면, 적어도 하나의 프로세서는, 단말로, 서버로부터 수신한 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 패킷을 전달하도록 제어할 수 있다.
본 개시의 다양한 실시예에 따르면, TCP 혼잡 상황을 지시하는 정보는 제2 TCP ACK의 헤더 내의 TCP 혼잡 상황 제어를 유도하는 TCP ECE(ECN-echo) 필드에 포함될 수 있다.
Claims (15)
- 무선 통신 시스템에서 기지국에 의해 수행되는 방법에 있어서,PDCP(packet data control protocol) 계층에서 하위계층으로 PDCP SDU(service data unit)를 전달하지 못하는 경우, 버퍼(buffer)에 상기 PDCP SDU를 저장하는 단계;상기 버퍼에 저장된 상기 PDCP SDU의 크기가 미리 설정된 임계(threshold)용량과 같거나 큰 경우 단말이 서버로 전송하는 제1 TCP(transmission control protocol) ACK(acknowledgement)의 헤더(header) 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 단계;상기 서버로, 상기 TCP 혼잡 상황을 지시하는 정보를 포함하는 제2 TCP ACK를 전송하는 단계; 및상기 서버로부터 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 TCP 패킷을 수신하는 단계를 포함하는, 방법.
- 청구항 1에 있어서,상기 제1 TCP ACK의 헤더 내의 필드에 상기 TCP 혼잡 상황을 지시하는 정보를 포함시키는 단계는,상기 TCP 혼잡 상황을 지시하는 정보에 기반하여 TCP checksum 값을 재계산하는 단계를 더 포함하는, 방법.
- 청구항 1에 있어서,상기 제2 TCP ACK는 상기 제1 TCK ACK에서 상기 TCP 혼잡 상황을 지시하는 정보를 포함하는, 방법.
- 청구항 1에 있어서,상기 TCP 혼잡 상황을 확인하였다는 정보는 상기 TCP 패킷의 TCP 헤더(header) 내의 CWR(congestion window reduced) 필드에 포함되는, 방법.
- 청구항 4에 있어서,상기 서버로부터 수신한 상기 TCP 패킷의 TCP 헤더 내의 상기 CWR 필드에 기반하여, 상기 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 단계를 중단하는 단계를 더 포함하는, 방법.
- 청구항 1에 있어서,상기 단말로, 상기 서버로부터 수신한 상기 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 상기 패킷을 전달하는 단계를 더 포함하는, 방법.
- 청구항 1에 있어서,상기 TCP 혼잡 상황을 지시하는 정보는 상기 제2 TCP ACK의 헤더 내의 TCP 혼잡 상황 제어를 유도하는 TCP ECE(ECN-echo) 필드에 포함되는, 방법.
- 청구항 1에 있어서,상기 하위계층은 RLC(radio link control) 계층을 포함하는, 방법.
- 무선 통신 시스템에서 기지국의 장치에 있어서,통신부; 및적어도 하나의 프로세서를 포함하며,상기 적어도 하나의 프로세서는,PDCP(packet data control protocol) 계층에서 하위계층으로 PDCP SDU(service data unit)를 전달하지 못하는 경우, 버퍼(buffer)에 상기 PDCP SDU를 저장하고,상기 버퍼에 저장된 상기 PDCP SDU의 크기가 미리 설정된 임계(threshold) 용량과 같거나 큰 경우 단말이 서버로 전송하는 제1 TCP(transmission control protocol) ACK(acknowledgement)의 헤더(header) 내의 필드(field)에 TCP 혼잡 상황을 지시하는 정보를 포함시키며,상기 서버로, 상기 TCP 혼잡 상황을 지시하는 정보를 포함하는 제2 TCP ACK를 전송하고,상기 서버로부터 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 TCP 패킷을 수신하도록 제어하는, 장치.
- 청구항 9에 있어서,상기 적어도 하나의 프로세서는,상기 TCP 혼잡 상황을 지시하는 정보에 기반하여 TCP checksum 값을 재계산하도록 제어하는, 장치.
- 청구항 9에 있어서,상기 제2 TCP ACK는 상기 제1 TCK ACK에서 상기 TCP 혼잡 상황을 지시하는 정보를 포함하는, 장치.
- 청구항 9에 있어서,상기 TCP 혼잡 상황을 확인하였다는 정보는 상기 TCP 패킷의 TCP 헤더(header) 내의 CWR(congestion window reduced) 필드에 포함되는, 장치.
- 청구항 12에 있어서,상기 적어도 하나의 프로세서는,상기 서버로부터 수신한 상기 TCP 패킷의 TCP 헤더 내의 상기 CWR 필드에 기반하여, 상기 제1 TCP ACK의 헤더 내의 필드에 TCP 혼잡 상황을 지시하는 정보를 포함시키는 동작을 중단하도록 제어하는, 장치.
- 청구항 9에 있어서,상기 적어도 하나의 프로세서는,상기 단말로, 상기 서버로부터 수신한 상기 TCP 혼잡 상황을 확인하였다는 정보를 포함하는 상기 패킷을 전달하도록 제어하는, 장치.
- 청구항 9에 있어서,상기 TCP 혼잡 상황을 지시하는 정보는 상기 제2 TCP ACK의 헤더 내의 TCP 혼잡 상황 제어를 유도하는 TCP ECE(ECN-echo) 필드에 포함되는, 장치.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0104445 | 2022-08-20 | ||
KR20220104445 | 2022-08-20 | ||
KR1020220104897A KR20240026273A (ko) | 2022-08-20 | 2022-08-22 | 무선 통신 시스템에서 tcp 혼잡 제어 방법 및 장치 |
KR10-2022-0104897 | 2022-08-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024043607A1 true WO2024043607A1 (ko) | 2024-02-29 |
Family
ID=90013588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2023/012143 WO2024043607A1 (ko) | 2022-08-20 | 2023-08-17 | 무선 통신 시스템에서 tcp 혼잡 제어 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024043607A1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110089684A (ko) * | 2010-02-01 | 2011-08-09 | 삼성전자주식회사 | 통신 시스템에서 무선 링크 제어 계층 및 패킷 데이터 융합 프로토콜 계층 간의 플로우 제어를 위한 방법 및 장치 |
KR20210071012A (ko) * | 2018-09-28 | 2021-06-15 | 비보 모바일 커뮤니케이션 컴퍼니 리미티드 | 정보 지시 방법, 지시 수신 방법, 단말 및 네트워크측 장치 |
KR102425660B1 (ko) * | 2015-08-21 | 2022-07-28 | 삼성전자 주식회사 | 무선 통신 시스템에서 혼잡 관리 방법 및 장치 |
-
2023
- 2023-08-17 WO PCT/KR2023/012143 patent/WO2024043607A1/ko unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110089684A (ko) * | 2010-02-01 | 2011-08-09 | 삼성전자주식회사 | 통신 시스템에서 무선 링크 제어 계층 및 패킷 데이터 융합 프로토콜 계층 간의 플로우 제어를 위한 방법 및 장치 |
KR102425660B1 (ko) * | 2015-08-21 | 2022-07-28 | 삼성전자 주식회사 | 무선 통신 시스템에서 혼잡 관리 방법 및 장치 |
KR20210071012A (ko) * | 2018-09-28 | 2021-06-15 | 비보 모바일 커뮤니케이션 컴퍼니 리미티드 | 정보 지시 방법, 지시 수신 방법, 단말 및 네트워크측 장치 |
Non-Patent Citations (2)
Title |
---|
BALAN R.K., LEE B.P., KUMAR K.R.R., JACOB L., SEAH W.K.G., ANANDA A.L.: "TCP HACK: TCP header checksum option to improve performance over lossy links", PROCEEDINGS IEEE INFOCOM 2001. CONFERENCE ON COMPUTER COMMUNICATIONS. TWENTIETH ANNUAL JOINT CONFERENCE OF THE IEEE COMPUTER AND COMMUNICATIONS SOCIETY (CAT. NO.01CH37213), PISCATAWAY, NJ : IEEE OPERATIONS CENTER, vol. 1, 22 April 2001 (2001-04-22) - 26 April 2001 (2001-04-26), pages 309 - 318, XP010538711, ISBN: 978-0-7803-7016-6, DOI: 10.1109/INFCOM.2001.916713 * |
QUALCOMM EUROPE: "Rate Adaptation using ECN", 3GPP DRAFT; S2-080461-RATE-ADAPTATION-ECN, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, vol. SA WG2, no. Marina del Rey; 20080109, 9 January 2008 (2008-01-09), Mobile Competence Centre ; 650, route des Lucioles ; F-06921 Sophia-Antipolis Cedex ; France , XP050262943 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11350305B2 (en) | Method and apparatus for processing data in wireless communication system | |
EP3903524B1 (en) | Method and apparatus for processing pdcp control data in system supporting high-reliability low-latency service | |
EP2255592B1 (en) | Method for configuring different data block formats for downlink and uplink | |
RU2461147C2 (ru) | Способ обработки радиопротокола в системе подвижной связи и передатчик подвижной связи | |
US6671287B1 (en) | Data transmission method in GPRS | |
CN112425202A (zh) | 下一代移动通信系统中分类和处理sdap控制pdu的方法及相关装置 | |
WO2017200326A1 (ko) | 이동 통신 시스템에서 효율적인 레이어 2 기능을 수행하는 방법 및 장치 | |
KR20190129191A (ko) | 차세대 이동 통신 시스템에서 주변 셀의 기준 신호로 준지속적 사운딩 기준 신호를 지시하는 방법 및 장치 | |
MXPA04009799A (es) | Control de enlace de radio para sistema de comunicacion movil multimedia en tiempo real. | |
CN111373837A (zh) | 用于在无线通信系统中发送和接收数据的方法和装置 | |
WO2010108353A1 (zh) | Pdu的发送/接收方法和装置 | |
KR20200076561A (ko) | 차세대 이동 통신 시스템에서 pdcp 계층 장치 기반 보안키 확인 방법 및 장치 | |
WO2024043607A1 (ko) | 무선 통신 시스템에서 tcp 혼잡 제어 방법 및 장치 | |
WO2022139551A1 (ko) | Harq 활성화 여부에 따른 타이머 동작 방법 및 장치 | |
WO2022056746A1 (zh) | 一种通信方法及通信装置 | |
KR20240026273A (ko) | 무선 통신 시스템에서 tcp 혼잡 제어 방법 및 장치 | |
Ramos et al. | Static Context Header Compression over Narrowband Internet of Things | |
CN114424671A (zh) | 聚合多个无线通信信道实现灵活全双工通信的方法和装置 | |
CN112740731A (zh) | 下一代移动通信系统中标识安全密钥的方法和装置 | |
US20230209400A1 (en) | Method and apparatus for effectively performing header compression or decompression procedure in next-generation mobile communication system | |
WO2023028950A1 (en) | Radio link control cumulative mode for new radio | |
TWI846088B (zh) | 為多播設置初始pdcp狀態變數的方法和使用者設備 | |
EP4304245A1 (en) | Method and device for applying integrity protection or verification procedure to enhance security in wireless communication system | |
US20240014939A1 (en) | Radio Link Control Cumulative Mode for New Radio | |
WO2023184552A1 (zh) | 一种数据传输方法及装置、通信设备 |
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: 23857641 Country of ref document: EP Kind code of ref document: A1 |