ipc's People
Forkers
sachinites suhas-code gtkent dungru pascald2286 anandpanchal elidrissiyounes abhishek31oct san747 andrew7252 netman2k udhayakumar-in8 xmonader comertsagiroglu ganeshbecse amore07 yuztang davidcaceres1512 far3ad thakur785 erhyilmazipc's Issues
Synchronization
How can we add sem_wait and sem_signal to implement synchronization to access critical region
Additional Feature if you are interested - Selective Updates
Currently, All clients are updated for any modification done in routing table on RTM server. What if clients needs to be notified only for selective entries.
When client starts, client must send "SUBSCRIBE_ALL" msg to server which tells server client is interested for all updates.
Later client can also send "SUBSCRIBE_ONE_ENTRY " to server, which tells server that it has to send updates only for this particular entry to this client.
When Client sends SUBSCRIBE_ONE_ENTRY to server, client must flush its entire routing table and maintain only those entries for which it has been selectively subscribed for.
When Client sends UNSUBSCRIBE_ONE_ENTRY to server, client must delete this particular entry from its routing table while others continue to exists. Server must not send any update for this entry to this client anymore.
When Client Sends Again "SUBSCRIBE_ALL" msg to server, again previous behavior for all updates should be restored.
When Client Sends "UNSUBSCRIBE_ALL" msg to server, client must flush its entire routing table and must not receive any update from server.
Server must maintain state of the client and print which client has subscribed for which service.
Lot of work ??
Improvement 2 : I did not know what to do next
I started server program, but i did not know what to do with it, all it showed was :
Select...
on screen.
Convert server to Main-Menu driven and user interactive program. Do dame with client also.
How I would know what all entries are present in Server/Client routing tables. Add some show command also besides CREATE/UPDATE/DELETE on client and server sides.
Improvements - Dont print all entries whenever I CREATE a new entry
I see, the below output :
CREATE 10.1.3.1 24 192.168.0.2 eth0/2
Manager has some changes to make
Destination IP: 10.1.3.1 Mask: 24 Gateway IP: 192.168.0.2 OIF: eth0/2
Destination IP: 10.1.2.1 Mask: 24 Gateway IP: 192.168.0.1 OIF: eth0/1
Destination IP: 10.1.1.1 Mask: 24 Gateway IP: 192.168.0.1 OIF: eth0/1
Do not print all the existing entries of the routing table on Server whenever I add one more entry. Print more helpful msg like :
Entry Added Successfully.
Entry Synchronized to all connected clients.
Similarly, print more meaning ful msg on client side, something like :
Added : Destination IP: 10.1.3.1 Mask: 24 Gateway IP: 192.168.0.2 OIF: eth0/2
Updated : Destination IP: 10.1.3.1 Mask: 24 Gateway IP: 192.168.0.2 OIF: eth0/2
Deleted : Destination IP: 10.1.3.1 Mask: 24
whenever client recvs sync from RTM.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.