Search Results

Search found 49465 results on 1979 pages for 'key value'.

Page 459/1979 | < Previous Page | 455 456 457 458 459 460 461 462 463 464 465 466  | Next Page >

  • bash terminal/console strange overlapping behavior

    - by UpKey
    I am using gnome-terminal in Ubuntu 11.10 and seem to get long lines overlapping in the terminal window. When I copy a long command line and paste it into the terminal, the text gets overlapped to the start of the line and often covers the user prompt. If I resize the terminal window, making it wider the overlapping gets undone and everything looks normal. In previous versions of Ubuntu, if a line was too long it would continue on the next line below. Another problem I have noticed that may be related, is when using the up arrow key to show previously typed commands, sometimes instead of the output command line being replaced by the previous command each time the key is pressed, the lines get partially merged. A portion of the old line remains, and the next command gets joined onto the end. This leftover part of a command is persistent and does not get replaced next time the key is pressed, although the insertion point or blinking cursor is at the end of the latest recalled command, and the leftover has no effect if I press enter. Is this problem a bug or some setting that needs fixing? Where do I look for the cause? keyboard? gnome-terminal? bash? Thank you for any help or suggestions offered

    Read the article

  • Computer suddenly won't boot - stops at a flashing prompt

    - by Dave M G
    I have been running Ubuntu on my computer for a long time, and I have been using 11.10 since it became available in October. Suddenly, this morning, when I rebooted, the computer would not reach the log in screen. I go through the standard POST boot sequence, and I also get a splash screen for my Nvidia graphics card, so at least most of the hardware seems to be working. After that, all I get is a flashing text prompt - one blinking white underline character on a screen that is otherwise completely blank. I don't think it is even reaching GRUB. No key input is possible. I have tried various key combinations to try and initiate some kind of interface, be it command line or anything else. The only key combination that works is [CTRL]+[ALT]+[Delete] to reboot. I realize this is likely to be a hardware problem, but it could be an Ubuntu problem(?), so I'm hoping for a specific set of troubleshooting steps so I can diagnose and repair this issue. My current suspicion is that one of the drives in my 2 disk software RAID has failed (even though they should be too new for that). However, this computer is critical to my work, so I'd like to invite advice on any possibilities so as to waste as little time as possible in fixing this machine.

    Read the article

  • IE 9 home page is hijacked by avg

    - by horace
    I definitely know how to change the home page in Internet Explorer (Tools -> Options -> General). The problem is, no matter what I put there, it never changes. Stop/restart Internet Explorer and the old home page is back. I did some research to see if there is a registry key that I could tweak to get the home page to set properly. I changed the start page registry key and refreshed the view and the start page key (without even restarting regedit) was reset back to its original value. Now I'm a little concerned. Maybe there's some virus I can't detect on my system? Internet Explorer 9.0.8112.16421 Windows 7 Pro SP 1 x64

    Read the article

  • Fastest reliable way to open the terminal?

    - by meder
    I actually had my SUPER_L ( left windows key ) binded to gnome-terminal, but for whatever reason ever since upgrading to 9.04 Ubuntu from 8.10 Intrepid it seemed to break the key binding. It was very handy because I could throw open the terminal with one key ( sorry but alt-f2 and typing gnome-terminal isn't practical for me ). Or perhaps it reset all the keybindings? I remember using xev and some gui type interface that was akin to Win32 registry editor. Anyway, I'm curious as to what you guys use to open the terminal.

    Read the article

  • Brief pause after keypress

    - by user36324
    After i press and hold the key it goes forward once then pauses for a second or less then goes forward on forever. My problem is the brief pause I cant locate the issue. Thanks for your help. while(game){ while (SDL_PollEvent(&e)){ mainChar.manageEvents(e); } background.renderChar(); mainChar.renderChar(); SDL_RenderPresent(ren); } void Character::manageEvents(SDL_Event event) { switch(event.type){ case SDL_KEYDOWN: KEYS[event.key.keysym.sym] = true; printf("true"); handleInput(); break; case SDL_KEYUP: KEYS[event.key.keysym.sym] = false; printf("false"); break; default: break; } } void Character::handleInput() { if(KEYS[SDLK_a]) { dst.x--; } if(KEYS[SDLK_d]) { dst.x++; } if(KEYS[SDLK_w]) { dst.y++; } if(KEYS[SDLK_s]) { dst.y--; } }

    Read the article

  • hd0 out of disk error results to low graphics mode

    - by msPeachy
    Yesterday, I have reinstalled Ubuntu due to a error: hd0 out of disk on boot. Everything went fine, I've installed apps, perform updates and upgraded the kernel. I've even restarted it a few times just to check if I would encounter boot issues and was glad that everything was working perfectly, then powered it down. The next morning when I boot, I got this error: hd0 out of disk error. Press any key to continue... again! After pressing a key, it took 10 minutes for the Ubuntu logo to appear with it's 5 dots. After another 5 minutes, Ubuntu started checking the disk and displayed a message that / has errors, I pressed F to fix the errors. After which Ubuntu tells me that /tmp is not yet ready for mounting so I pressed S to skip mounting it, then Ubuntu restarted. On boot I saw the error: hd0 out of disk error. Press any key to continue... again. This time it took only a minute for the Ubuntu logo to appear and after another minute a dialog box appeared with the following message: The system is running in low-graphics mode. Your screen, graphics card, and input settings could not be detected correctly. You will have to configure these yourself. What would you like to do? Run in low-graphics mode for just one session Reconfigure graphics Troubleshoot the error Exit to console login Whichever option I choose I ended up with a console prompt: grub-editenv: error: cannot read the file /boot/grub/grubenv. _ I can't do anything on this console, whatever I type nothing happens. I've rebooted several times and I get same error every time. I don't quite understand what is wrong with Ubuntu or with my installation. I've encountered this hd0 out of disk error several times already and always ended up reinstalling. I'd really really appreciate it if you guys can help me fix this. Thank you and good day.

    Read the article

  • A Web Service to collect data from local servers every hour

    - by anilerduran
    I'm trying to find a way to collect data from different servers around the world. Here are the details: There is only one single PowerShell script on servers that encrypts data (simple csv file) and sends with preferred method (HTTP/HTTPS Post could be) There is no more control on that servers. Can't install any service, process etc. Just I can configure script to execute every hour. This script also will have encrypted username/password/license key for every server. Script will compress data and send to me with these information. So I need a service (I'm not sure if Web Service is the rigth solution) on the cloud that will help me to: Will get data that is sent from servers using a method. Will authenticate request to recognize sender using license key/username/password and most importantly, Will redirect/send this filecab to my SQL Server on the cloud (Azure). Also it should seperate data according to customer information in license key. So every data for every customer will be stored in dedicated DB/Tables on my SQL All the processes above should be completed automatically. No way for manual steps. Question: A Web Service (SOAP or Restful) is the rigth solution for that?

    Read the article

  • Sudden complaint that Windows is not genuine - some questions

    - by blade
    Hi, I used to use VMWare Workstation and made several VMs with Win Server 2008, which worked fine. My first tasks were to setup RDP, updates, and activate the OS. I deleted Workstation and thus did not have my VMs available to use for about 2 months. Now I have VMWare Server 2.0.2 as I this is free and I am going to get Hyper-V on a host Win Server in about March, but when I have accessed one of my VMs (haven't tried the others yet), it complains that the copy of Windows is not genuine. I now have a black screen but can access all my apps on the VM. Will the OS eventually shut me out from accessing it? I got my key from the Action Pack but the standard R2 key has been taken down and replaced with the Enteprise R2 key. I have Enterprise R2 but apparently the autorun is corrupt! Thanks

    Read the article

  • YouTube fullscreen not displaying

    - by pt2ph8
    For some reason YouTube videos in my website do not get the fullscreen button, even if I added the parameter allowFullScreen set to true both in the object and embed tag. Here's an example page: http://www.indievault.it/2011/11/09/indie-vault-alla-games-week-2011-online-la-video-gallery/ Just take a quick look at the source. The allowFullScreen param is there, but the button won't show. Here's an excerpt from the code in that page: <object width="540" height="325"><param name="movie" value="http://www.youtube.com/v/dvYQhJwwkgA"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/dvYQhJwwkgA" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="540" height="325"></embed </object>

    Read the article

  • Difference between SSLCertificateFile and SSLCertificateChainFile?

    - by chrisjlee
    Normally with a virtual host an ssl is setup with the following directives: Listen 443 SSLCertificateFile /home/web/certs/domain1.public.crt SSLCertificateKeyFile /home/web/certs/domain1.private.key SSLCertificateChainFile /home/web/certs/domain1.intermediate.crt From: For enabling SSL for a single domain on a server with muliple vhosts, will this configuration work? What is the difference between SSLCertificateFile and SSLCertificateChainFile ? The client has purchased a CA key from GoDaddy. It looks like GoDaddy only provides a SSLCertificateFile (.crt file), and a SSLCertificateKeyFile (.key file) and not at SSLCertificateChainFile. Will my ssl still work without a SSLCertificateChainFile path specified ? Also, is there a canonical path where these files should be placed?

    Read the article

  • Get the Latest Security Inside Out Newsletter, October Edition

    - by Troy Kitch
    The latest October edition of the Security Inside Out newsletter is now available and covers the following important security news: Securing Oracle Database 12c: A Technical Primer The new multitenant architecture of Oracle Database 12c calls for adopting an updated approach to database security. In response, Oracle security experts have written a new book that is expected to become a key resource for database administrators. Find out how to get a complimentary copy.  Read More HIPAA Omnibus Rule Is in Effect: Are You Ready? On September 23, 2013, the HIPAA Omnibus Rule went into full effect. To help Oracle’s healthcare customers ready their organizations for the new requirements, law firm Ballard Spahr LLP and the Oracle Security team hosted a webcast titled “Addressing the Final HIPAA Omnibus Rule and Securing Protected Health Information.” Find out three key changes affecting Oracle customers.  Read More The Internet of Things: A New Identity Management Paradigm By 2020, it’s predicted there will be 50 billion devices wirelessly connected to the internet, from consumer products to highly complex industrial and manufacturing equipment and processes. Find out the key challenges of protecting identity and data for the new paradigm called the Internet of Things.  Read More

    Read the article

  • Mysql query does not update row [closed]

    - by Gerculy Robert
    // Connect to server and select database. mysql_connect("$host", "$username", "$password")or die("cannot connect"); mysql_select_db("$db_name")or die("cannot select DB"); // get value of id that sent from address bar /*$id=$_GET['$usrid'];*/ // Retrieve data from database $sql="SELECT * FROM user WHERE id='$usrid'"; $result=mysql_query($sql); $rows=mysql_fetch_array($result); ?> <table width="400" border="0" cellspacing="1" cellpadding="0"> <tr> <form name="form1" method="post" action="update.php"> <td> <table width="100%" border="0" cellspacing="1" cellpadding="0"> <tr> <td>&nbsp;</td> <td colspan="3"><strong>Update site info</strong> </td> </tr> <tr> <td align="center">&nbsp;</td> <td align="center">&nbsp;</td> <td align="center">&nbsp;</td> <td align="center">&nbsp;</td> </tr> <tr> <td align="center">&nbsp;</td> <td align="center"><strong>User Name</strong></td> <td align="center"><strong>Site url</strong></td> <td align="center"><strong>Url banner</strong></td> </tr> <tr> <td>&nbsp;</td> <td align="center"> <input name="username" type="text" id="username" value="<? echo $rows['username']; ?>"> </td> <td align="center"> <input name="siteurl" type="text" id="siteurl" value="<? echo $rows['siteurl']; ?>" size="40"> </td> <td> <input name="urlbanner" type="text" id="urlbanner" value="<? echo $rows['urlbanner']; ?>" size="40"> </td> </tr> <tr> <td>&nbsp;</td> <td> <input name="id" type="hidden" id="id" value="<? echo $rows['id']; ?>"> </td> <td align="center"> <input type="submit" name="Submit" value="Submit"> </td> <td>&nbsp;</td> </tr> </table> </td> </form> </tr> </table> <?php // close connection mysql_close(); ?> // Connect to server and select database. mysql_connect("$host", "$username", "$password")or die("cannot connect"); mysql_select_db("$db_name")or die("cannot select DB"); // update data in mysql database $sql="update user SET siteurl='$siteurl', username='$username', urlbanner='$urlbanner' WHERE id=$usrid"; $result=mysql_query($sql); // if successfully updated. if($result){ echo "Successful"; echo "<BR>"; echo "<a href='edit.php'>View result</a>"; } else { echo "ERROR"; } Hello, I have this two pages wich should update 3 rows. The problem is it does not update all , only 2 . I tried over 1 hour to find the problem but nothing. The row , siteurl, is not being updated at all . The table is : varchar(255) Database and session is ok. Any idea ? It's just a simple update code , should work fine :(

    Read the article

  • DRY, string, and unit testing

    - by Rodrigue
    I have a recurring question when writing unit tests for code that involves constant string values. Let's take an example of a method/function that does some processing and returns a string containing a pre-defined constant. In python, that would be something like: STRING_TEMPLATE = "/some/constant/string/with/%s/that/needs/interpolation/" def process(some_param): # We do some meaningful work that gives us a value result = _some_meaningful_action() return STRING_TEMPLATE % result If I want to unit test process, one of my tests will check the return value. This is where I wonder what the best solution is. In my unit test, I can: apply DRY and use the already defined constant repeat myself and rewrite the entire string def test_foo_should_return_correct_url(): string_result = process() # Applying DRY and using the already defined constant assert STRING_TEMPLATE % "1234" == string_result # Repeating myself, repeating myself assert "/some/constant/string/with/1234/that/needs/interpolation/" == url The advantage I see in the former is that my test will break if I put the wrong string value in my constant. The inconvenient is that I may be rewriting the same string over and over again across different unit tests.

    Read the article

  • Newly installed DIR-615 - how to connect to the wireless?

    - by JK123
    I've just installed a D-Link DIR 615, but can't figure out how to connect to the wireless.. When I double click my wireless icon in the tray, it does show the new network. Its starts the "WiFi protected setup wizard" and the first thing it asks for is the "Device Ownership Password". I have no idea what that is - I've tried the PIN and the router password. On the next page it says: SSID: _(name)__ Security type: _wpa2 personal aes ccmp_ Password: _some long key that is not what I entered during router setup_ I change the key to the one I created when setting up the router. I've also tried leaving the key as it is shown in the dialog. But it does not connect either way. All it says is "Configuration failed" So how do I connect to the new wireless network??

    Read the article

  • What is the standard technique for shifting the frames of a sprite according to user input?

    - by virtual__
    From my own experience, I developed two techniques for changing the sprites of a character that's reacting to user input -- this in the context of a classic 2D platformer. The first one is to store all character's pixmaps in a list, putting the index of the currently used pixmap in an ordinary variable. This way, every time the player presses a key -- say the right arrow for moving the character forward -- the graphics engine sees what's the next pixmap to draw, draws it, and increments the index counter. That's a pretty common approach I believe, the problem is that in this case the animation's quality depends not only on the number of sprites available but also on how often your engine listens to user input. The second technique is to actually play an animation every key press event. For this you can use any sort of animation framework you want. It's only necessary to set the timer, the animation steps and to call the animation's play() method on your key press event handler. The problem with that approach is that is lacks responsiveness, since the character won't react to any input while the current animation is still being played. What I want to know is whether you are using one of these techniques -- or something similar -- in your games, or whether there's a standard method for animating sprites out there that's widely known by everybody but me.

    Read the article

  • How can I remap control+e to escape+control+e in iTerm2?

    - by cwd
    I have set up a few custom keyboard shortcuts in iTerm2 to easily move the cursor around with the arrow keys, but now I'd like to remap control+e to be escape, control+e because bash 4.2 no longer auto-expands variables using the tab key. I know I've done the first part correctly in choosing the keyboard shortcut to remap, but I don't understand how to look up the correct escape sequence (or hex codes) to send in the bottom section: I reference they keyboard codes but that wasn't much help. How can I remap this, and how can I look up the codes in the future? (No luck with Google) Update @db - thanks. To save others trouble I also found a cool util Key Codes.app which can be used to find key codes:

    Read the article

  • Transferring to a SSD using Windows Explorer?

    - by Nick
    I've just bought a new SSD (regretting this already) which I want to make my primary hard drive on my new computer. It's a fresh Windows 8 install, so I'm wondering if I can just copy the entire contents of C: onto my new SSD drive, or will I need to copy other things too such as boot records? I don't have a CD drive unfortunately (I removed it to put in the SSD - it's a very small HTPC) and I don't have any USB stick to make a bootable copy of Clonezilla or similar. UPDATE: I have decided to re-install Windows 8 from scratch onto the SSD, the problem is obtaining the serial key that is embedded into the BIOS. I actually have a spare, unused product key from my desktop I'm writing on now, but I'd rather not use that when I already have a valid key in my new HTPC :( Thanks :)

    Read the article

  • How to activate Windows 8 Pro license with Releae Preview installed?

    - by Antonio
    So I'm one of the many who downloaded the Release Preview (64-bit). I now got the ISO to install Windows 8 Professional (64-bit) and a product key (note: I didn't get these from either Windows 8 Upgrade Assistant or Microsoft's web Store), everything legal. However, the Windows 8 Upgrade Assistant only gives me the option to Store my personal files which means that I'll have to say goodbye to both my Program Files and their respective configurations. I just want to input the Product Key and activate the license, why isn't this possible? Even "Add Features to Windows 8" doesn't accept the key. Do I really need to backup all of my stuff and make a clean install?

    Read the article

  • I cant use wasd and arrow keys at the same time?

    - by William
    I am having this promblem where if I press one key on either one of the arrow keys or wasd, I cant press that direction on the other one unless that key is the only key of wasd or the arrow keys being pressed at that time. For example: I can press D and RIGHT, but if I do, I cant press W,A,S,LEFT,UP and DOWN. If I press A and S then I cant press LEFT and Down. Does anyone have a solution to that problem, cause I have searhed around, and found no similar problem.

    Read the article

  • Issues trying to download Windows 8.1 using official downloader

    - by Aviral Singh
    I had been trying to download Windows 8.1 ISO from the last 3-4 days but a silly issue is preventing me to download it.As many posts over the internet explain,I tried to use generic keys to download(as I don't have Windows 8),but the installer always shows "We can't connect right now,please check you internet connection.".Isn't it silly?,I have a working internet connection.No matter whatever key I use it always ends at this message.I've tried every single generic key,and almost every key was accepted by the installer as valid,but then the message. Can anyone please explain why is this happening and any workarounds ?

    Read the article

  • Map keycode 133+54 to shift+control+c in Linux for Mac keyboard?

    - by Edward_178118
    On Linux Mint 13 - Mate using the Terminal program Terminator with a Mac keyboard. I want the command key for COPY/PASTE to behave as it does on the Mac. I have been able to change it to treat the command key as a control key, and this works fine for most apps except in the Terminal program. Using xev when I press command+c it's a keycode of 133 + 54. This is a ^c to the Terminal app which acts like a ^c in a shell. The default for COPY which can be changed in Terminator is Shift+Control+c. Is there a way to map the keycode of 133 + 54 to Shift+Control+c, but only for the Terminator app? Thanks!

    Read the article

  • How to make the internal subwoofer work on an Asus G73JW?

    - by CodyLoco
    I have an Asus G73JW laptop which has an internal subwoofer built-in. Currently, the system detects the internal speakers as a 2.0 system (or I can change do 4.0 is the only other option). I found a bug report here: https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/673051 which discusses the bug and according to them a fix was sent upstream back at the end of 2010. I would have thought this would have made it into 12.04 but I guess not? I tried following the link given at the very bottom to install the latest ALSA drivers, here: https://wiki.ubuntu.com/Audio/InstallingLinuxAlsaDriverModules however I keep running into an error when trying to install: sudo apt-get install linux-alsa-driver-modules-$(uname -r) Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package linux-alsa-driver-modules-3.2.0-24-generic E: Couldn't find any package by regex 'linux-alsa-driver-modules-3.2.0-24-generic' I believe I have added the repository correctly: sudo add-apt-repository ppa:ubuntu-audio-dev/ppa [sudo] password for codyloco: You are about to add the following PPA to your system: This PPA will be used to provide testing versions of packages for supported Ubuntu releases. More info: https://launchpad.net/~ubuntu-audio-dev/+archive/ppa Press [ENTER] to continue or ctrl-c to cancel adding it Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.7apgZoNrqK --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80/ --recv 4E9F485BF943EF0EABA10B5BD225991A72B194E5 gpg: requesting key 72B194E5 from hkp server keyserver.ubuntu.com gpg: key 72B194E5: public key "Launchpad Ubuntu Audio Dev team PPA" imported gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1) And I also ran an update as well (followed the instructions on the fix above). Any ideas?

    Read the article

  • ssh rsa keys expires after 5 years

    - by Kreker
    I'm using an old login with ssh-rsa public/private key and all was good. I noticed that a couple of days ago the authorizazion was avoid with message "server refused our keys". After diggin' I figured out that the couple of keys stop working after exactly 5 years of their creation. So I make a new pair of keys, take the public one, paste inside a file in ~/.ssh of the username that I'm using, converted it with ssh-keygen -if and paste the new file into authorized_keys but the I still get "server refused our key". It's ok to copy and paste the real key without transfer it? What I'm missing? This isn't my first time using a pair of keys and I follow the same procedure as described. I'm in doubt if I'm changing the correct authorized_keys file but I've take a look in /etc/passwd and see where is the home of the login which I'm using.

    Read the article

  • wireless printer - entering WPA - is there a quicker way?

    - by camcam
    I have a wireless printer (Brother DCP-585CW). The wireless setup instruction says I should enter the WPA key to the printer. The key is entered using up and down buttons on the printer. So, I am supposed to enter 64 characters using up and down buttons. To enter 1 character, it takes on average (24+10)/2 = 17 times pressing the button (digits start after 24 letters). So 17*64 = 1088 times. Is there a quicker way to setup a wireless printer? Maybe there is a Windows program that discovers printers connected to computer through USB or Ethernet (my printer has both sockets) and allows to pre-configure it for wireless usage (enter the long WPA key)? Update There is BRAdmin program and it allows to set up almost all wireless settings... almost - all except WPA :(

    Read the article

  • Exploring TCP throughput with DTrace (2)

    - by user12820842
    Last time, I described how we can use the overlap in distributions of unacknowledged byte counts and send window to determine whether the peer's receive window may be too small, limiting throughput. Let's combine that comparison with a comparison of congestion window and slow start threshold, all on a per-port/per-client basis. This will help us Identify whether the congestion window or the receive window are limiting factors on throughput by comparing the distributions of congestion window and send window values to the distribution of outstanding (unacked) bytes. This will allow us to get a visual sense for how often we are thwarted in our attempts to fill the pipe due to congestion control versus the peer not being able to receive any more data. Identify whether slow start or congestion avoidance predominate by comparing the overlap in the congestion window and slow start distributions. If the slow start threshold distribution overlaps with the congestion window, we know that we have switched between slow start and congestion avoidance, possibly multiple times. Identify whether the peer's receive window is too small by comparing the distribution of outstanding unacked bytes with the send window distribution (i.e. the peer's receive window). I discussed this here. # dtrace -s tcp_window.d dtrace: script 'tcp_window.d' matched 10 probes ^C cwnd 80 10.175.96.92 value ------------- Distribution ------------- count 1024 | 0 2048 | 4 4096 | 6 8192 | 18 16384 | 36 32768 |@ 79 65536 |@ 155 131072 |@ 199 262144 |@@@ 400 524288 |@@@@@@ 798 1048576 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 3848 2097152 | 0 ssthresh 80 10.175.96.92 value ------------- Distribution ------------- count 268435456 | 0 536870912 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 5543 1073741824 | 0 unacked 80 10.175.96.92 value ------------- Distribution ------------- count -1 | 0 0 | 1 1 | 0 2 | 0 4 | 0 8 | 0 16 | 0 32 | 0 64 | 0 128 | 0 256 | 3 512 | 0 1024 | 0 2048 | 4 4096 | 9 8192 | 21 16384 | 36 32768 |@ 78 65536 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 5391 131072 | 0 swnd 80 10.175.96.92 value ------------- Distribution ------------- count 32768 | 0 65536 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 5543 131072 | 0 Here we are observing a large file transfer via http on the webserver. Comparing these distributions, we can observe: That slow start congestion control is in operation. The distribution of congestion window values lies below the range of slow start threshold values (which are in the 536870912+ range), so the connection is in slow start mode. Both the unacked byte count and the send window values peak in the 65536-131071 range, but the send window value distribution is narrower. This tells us that the peer TCP's receive window is not closing. The congestion window distribution peaks in the 1048576 - 2097152 range while the receive window distribution is confined to the 65536-131071 range. Since the cwnd distribution ranges as low as 2048-4095, we can see that for some of the time we have been observing the connection, congestion control has been a limiting factor on transfer, but for the majority of the time the receive window of the peer would more likely have been the limiting factor. However, we know the window has never closed as the distribution of swnd values stays within the 65536-131071 range. So all in all we have a connection that has been mildly constrained by congestion control, but for the bulk of the time we have been observing it neither congestion or peer receive window have limited throughput. Here's the script: #!/usr/sbin/dtrace -s tcp:::send / (args[4]-tcp_flags & (TH_SYN|TH_RST|TH_FIN)) == 0 / { @cwnd["cwnd", args[4]-tcp_sport, args[2]-ip_daddr] = quantize(args[3]-tcps_cwnd); @ssthresh["ssthresh", args[4]-tcp_sport, args[2]-ip_daddr] = quantize(args[3]-tcps_cwnd_ssthresh); @unacked["unacked", args[4]-tcp_sport, args[2]-ip_daddr] = quantize(args[3]-tcps_snxt - args[3]-tcps_suna); @swnd["swnd", args[4]-tcp_sport, args[2]-ip_daddr] = quantize((args[4]-tcp_window)*(1 tcps_snd_ws)); } One surprise here is that slow start is still in operation - one would assume that for a large file transfer, acknowledgements would push the congestion window up past the slow start threshold over time. The slow start threshold is in fact still close to it's initial (very high) value, so that would suggest we have not experienced any congestion (the slow start threshold is adjusted when congestion occurs). Also, the above measurements were taken early in the connection lifetime, so the congestion window did not get a changes to get bumped up to the level of the slow start threshold. A good strategy when examining these sorts of measurements for a given service (such as a webserver) would be start by examining the distributions above aggregated by port number only to get an overall feel for service performance, i.e. is congestion control or peer receive window size an issue, or are we unconstrained to fill the pipe? From there, the overlap of distributions will tell us whether to drill down into specific clients. For example if the send window distribution has multiple peaks, we may want to examine if particular clients show issues with their receive window.

    Read the article

< Previous Page | 455 456 457 458 459 460 461 462 463 464 465 466  | Next Page >