separate Socket ServerSocket DataGramSocket
modify the demo to fit the change of separation