 is essential to discuss the implementation basics for developing solutions using the concepts discussed in preceding chapters. Some of the important aspects in developing management applications are: These applications mainly deal with the application layer. Management pro- tocols usually lie in this layer. There will be multiple agents or clients running on the network elements that will collect data and send to a central server. Even for upper layers, there will be business and service level applications that take feed from multiple NMS clients. There are different techniques of communication based on environment. Socket-based programs, RPC-based programs, and web-based programs are quite common in implementing application interactions for manage- ment solutions. Fundamentals of EMS, NMS and OSS/BSS The specific application layer protocol is more a matter of choice based on data to be sent. For usual management operations like get, set, and trap func- tionalities, management protocols like SNMP or NETCONF could be used. While SNMP is the choice in most legacy solutions, the more recent applica- tions use the power of XML and use XML-based protocols like SOAP. For other management functions like file transfer, FTP is still the most popular choice, and for alerts as mail SMTP is used. This part of the book is intended to cover all these topics for developing manage- ment applications including a case study on the design approach to be followed in developing an NGNM solution and then customizing the solution for a specific network. The coverage still limits the discussion to the fundamentals with informa- tion on additional reading to get detailed information on specific topics. This chapter gives details on the application layer and client-server program- ming. The socket interface is then discussed in detail how TCP and UDP commu- tation is achieved with socket programming. The programming language used in this chapter is "C" considering most initial implementations of socket programming were done with socket A