getcommon.pl
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:2k
源码类别:

通讯编程

开发平台:

Visual C++

  1. #!/usr/bin/perl -w
  2. #
  3. # Copyright (C) 2001 by USC/ISI
  4. # All rights reserved.
  5. #
  6. # Redistribution and use in source and binary forms are permitted
  7. # provided that the above copyright notice and this paragraph are
  8. # duplicated in all such forms and that any documentation, advertising
  9. # materials, and other materials related to such distribution and use
  10. # acknowledge that the software was developed by the University of
  11. # Southern California, Information Sciences Institute.  The name of the
  12. # University may not be used to endorse or promote products derived from
  13. # this software without specific prior written permission.
  14. #
  15. # THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
  16. # WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
  17. # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  18. #
  19. # An perl script that seperate inbound and outbound traffic of ISI domain, 
  20. # used by SAMAN ModelGen
  21. #
  22. # This work is supported by DARPA through SAMAN Project
  23. # (http://www.isi.edu/saman/), administered by the Space and Naval
  24. # Warfare System Center San Diego under Contract No. N66001-00-C-8066
  25. #
  26. open(WCLIENT,"< webCLIENT");
  27. open(WSERVER,"< webSERVER");
  28. open(FCLIENT,"< ftpCLIENT");
  29. open(FSERVER,"< ftpSERVER");
  30. open(FNODE,"> node.tcl");
  31. open(WCDF,"> web.server.cdf");
  32. open(FCDF,"> ftp.server.cdf");
  33. $cnt=0;
  34. while (<FSERVER>) {
  35.         ($server,$rest)= split(/[n ]/,$_);
  36. $cnt++;
  37. }
  38. print FNODE "set num_ftp_server $cntn";
  39. foreach $j (1 .. $cnt) {
  40. $k=$j-1;
  41. $m=1.0/$cnt*$j;
  42. print FCDF "$k $j $mn"; 
  43. }
  44. $cnt=0;
  45. while (<WSERVER>) {
  46.         ($server,$rest)= split(/[n ]/,$_);
  47. $cnt++;
  48. }
  49. print FNODE "set num_web_server $cntn";
  50. foreach $j (1 .. $cnt) {
  51. $k=$j-1;
  52. $m=1.0/$cnt*$j;
  53. print WCDF "$k $j $mn"; 
  54. }
  55. $cnt=0;
  56. while (<WCLIENT>) {
  57.         ($client,$rest)= split(/[n ]/,$_);
  58.         $wclient[$cnt]=$client;
  59. $cnt++;
  60. }
  61. $wc=$cnt;
  62. $common=0;
  63. $cnt=0;
  64. while (<FCLIENT>) {
  65.         ($client,$rest)= split(/[n ]/,$_);
  66. $c=1;
  67. foreach $j (0 .. $#wclient) {
  68.        if (($client eq $wclient[$j]) && ($c==1)) {
  69. $common++;
  70. $c=0;
  71. }
  72. }
  73. $cnt++;
  74. }
  75. $wc=$wc-$common;
  76. $wf=$cnt-$common;
  77. print FNODE "set num_common_client $commonn";
  78. print FNODE "set num_web_client $wcn";
  79. print FNODE "set num_ftp_client $wfn";
  80. close(FCLIENT);
  81. close(FSERVER);
  82. close(WCLIENT);
  83. close(WSERVER);
  84. close(FNODE);
  85. close(WCDF);
  86. close(FCDF);