Linux Porting Chris Palow ESM Consists of Three Parts for The

Linux Porting Chris Palow ESM Consists of Three Parts for The

ESMS – Log Server Brian Goodman Overlay tree gets quite large (we hope). How to gather performance/error logs in a robust and scalable fashion? Constraint: We would like to avoid recompiling the kernel. ¾Problem: Linux has a default limit of 512 threads per process •Solution: Don’t use threads! ¾Problem: Select() can poll only 1024 file descriptors by default (we need 2 per connection!) •Solution: Multiple instances per machine– run each one on a different port •Solution: Multiple machines–give clients a list of machine/port pairs; they can pick one randomly for each connect ¾Problem: On a dropped connection/failed ESMS, how much data was lost in transit? What should be re-sent? •Solution: Keep a buffer of recently sent data, at least as large as the kernel buffer •Solution: On reconnect, sent byte number to begin from, entire buffer– ESMS can simply seek() and begin appending! Source Linux Porting Chris Palow Source Monitor ESM consists of three parts for the viewers: ESMS Monitor the overlay node, a QuickTime player, and the program that coordinates the interaction between the other two. ¾Problem: Find a QuickTime player for Linux: Encoders • Has to support a video and an audio codec we can broadcast • Has to support receiving the ESMS – Log broadcast in a RTP stream ESM Node Server ¾Possible Solution: Open source players (Windows Clients) • They support codecs we use • They don’t support the encapsulation in RTP streams. ¾Solution: Emulate the Windows Apple QuickTime Player. • Not “true” emulation. ESM Node • ISA is the same just the system calls (Mac Clients that are different Under Construction) ESM Node • Wine wraps Windows system calls (Linux Client) to their Linux equivalents. ¾Not a problem: ESM’s overlay code is Online UNIX native Monitor • it works in Windows by using the Windows analog of Wine: Cygwin. ¾Problem: Program that coordinates all the individual components that make up our Web Panel Status Reports system was Windows specific ¾Solution: Rewrite the code to be more Data portable Logs Online Monitoring System Jiin Joo Ong ¾ Problem: How do we “view” the overlay network? • Ideally, want to know n2 bandwidth, delay, etc. • Want an easy way to spot errors in the system, aid debugging. ¾ Solution: Dedicated machine that receives feedback from all components of the system • Each ESM Node sends UDP packets reporting their status. • Source Monitor, Web Server Monitor and Esms Monitor give detailed status report. • Information is parsed and presented in graphical format instantly. (~10 sec.) • Web access to information, ubiquitous monitoring of the system. Robustness of Key Components ¾ Source Monitor and Esms Monitor serve as process restart agents. • Detects unusual activity. (e.g. source process / Esms process died) • Auto-Recovery! Restarts process, automatically adjust logging mechanism immediately (~5 sec.).

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    1 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us