Given that a TCP connection is technically, two way, why do we say Http long polling is unidirectional and web socket is bi-directional? Is it how the long polling standard was implemented and there is some nuanced thing there? To me even a http long polling seems bi-directional. I cannot find anything concrete that cites a proper technical difference. Just vague blogs citing, only client can initiate a request with server in long polling. That does not make much sense as it is vague. Once a client has the connection to server, both client and server can send data to each other even in long polling.
Bi-Directional Vs Uni-Directional communication
227 views Asked by curiousengineer At
1
There are 1 answers
Related Questions in SOCKETS
- Node.js Server + Socket.IO + Android Mobile Applicatoin XHR Polling Error...?
- My server TCP doesn't receive messages from the client in C
- how is strncpy able to copy from source to empty destination?
- Python Multicast packet receiver stops receiving multicast packets when computer is connected to WiFi
- Python Client-Server Communication with Protocol
- Reversed TLS re-connection issue
- Android 13 & 14 seem to close WebSocket connection, if i put app in background, after ~20s
- Java SocketException: Connection reset,. What is the cause?
- Multipart/form-data with chunked data transfer (ICAP protocol)
- View Socket View
- Client connection timeout during Android & Windows PC communication via sockets
- Browser connect to raw sockets even possible?
- Protocol 43200 after unpacking received data
- Unity SocketIo using Best http2 plugin want to use in webgl
- How does pre-allocating a pool of SocketAsyncEventArgs objects upfront improve the performance of a server application in c#
Related Questions in WEBSOCKET
- Resolving ElephantIO ServerConnectionFailureException: Error establishing connection to server
- Django socketio process
- How to decode audio stream using tornado websocket?
- Java and React WebSocket - Error Connection
- Socket.io nodejs server .NET connection
- Troubleshooting WebSocket 502 Error in Python Code
- Getting an error in Socket.io wordle project
- Best practices with realtime data / websockets. Send vs. revalidate data
- My socket.io web socket application is not sending data to some users
- Android 13 & 14 seem to close WebSocket connection, if i put app in background, after ~20s
- Audio bytes chunks getting corrupted during streaming using Django and Websockets
- Odoo live chat not working when using apache reverse proxy
- websocket Fatal error message stating "Failed to listen on tcp://0.0.0.0:8080: Address already in use
- Stomp connection using JWT token in Python
- Symphony Fintech (XTS) market-data socket data integration in PyQt6 using python3
Related Questions in LONG-POLLING
- Java, Telegram Bot runtime problems
- How do I detect client disconnect from a long poll to a Spring endpoint
- How to update all clients when a webhook is recieved in Python Flask
- HTTP Longpolling with changing request parameters using rxjs
- Laravel rest api - calling SSE or Long polling blocks other HTTP request
- PHP script doesn't quit when browser connection is closed
- During tomcat/jersey shutdown while long polling, the ServletContextListener hook is delayed by 7 seconds, why?
- How to occasionally push notifications to mobile applications?
- Socket.io with http polling without sticky sessions in a distributed system
- Implementing long polling with python multiprocessing but doesn't work
- How can I save a photo from a telegram bot user to a folder on a disk in good quality?
- Long Polling with an array php Javascript
- Long-polling with message queues in a clustered environment
- Bi-Directional Vs Uni-Directional communication
- Tomcat, NGINX, Vaadin, Spring Boot and LONG POLLING Push
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
With long polling, the TCP/TLS connection is made, then the client sends a request to the server, and then the connection is left open and from then on information flows from the server to the client only. In long polling, the client can't send any additional information to the server after that initial request (at least not until after the server has sent back a reply; after that, the client can make another request)
With WebSocket OTOH, the communication is full-duplex, i.e. the client and the server are both free to send more data across the connection any time they want to.